From daa02f7d84017f21c3ffa2be9997560d353a8829 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C3=98yvind=20Harboe?= Date: Wed, 7 Jul 2010 14:56:56 +0200 Subject: [PATCH] transport: fix segfault in transport select MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit String compare against addresses in range 0 or so due to not checking if there was an active session first. Signed-off-by: Øyvind Harboe --- src/jtag/transport.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/jtag/transport.c b/src/jtag/transport.c index cee8ffb393..e431feec71 100644 --- a/src/jtag/transport.c +++ b/src/jtag/transport.c @@ -281,18 +281,17 @@ COMMAND_HANDLER(handle_transport_select) return ERROR_FAIL; case 1: /* "select FOO" */ - if(strcmp(session->name, CMD_ARGV[0]) == 0) { + if ((session!= NULL) && strcmp(session->name, CMD_ARGV[0]) == 0) { /* NOP */ LOG_DEBUG("transport '%s' is already selected", CMD_ARGV[0]); return ERROR_OK; } else { - - /* we can't change this session's transport after-the-fact */ - if (session) { - LOG_ERROR("session's transport is already selected."); - return ERROR_FAIL; - } + /* we can't change this session's transport after-the-fact */ + if (session) { + LOG_ERROR("session's transport is already selected."); + return ERROR_FAIL; + } } break; -- 2.30.2