target: handle command 'target current' when no target is present

Is it possible to run OpenOCD without any target, for example to
only dump the rom-tables of an arm dap, or to perform low level
jtag operations.
But without any target created, the command 'target current'
causes OpenOCD to abruptly exit.

Handle in command 'target current' the case of no targets.

Change-Id: Ide15cb13bec84b88ccc3e7126523c04a6d70e636
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/5881
Tested-by: jenkins
This commit is contained in:
Antonio Borneo 2020-10-23 16:45:35 +02:00
parent e2e8a5f467
commit 65de0d3bfa
1 changed files with 3 additions and 1 deletions

View File

@ -5699,7 +5699,9 @@ static int jim_target_current(Jim_Interp *interp, int argc, Jim_Obj *const *argv
struct command_context *cmd_ctx = current_command_context(interp);
assert(cmd_ctx != NULL);
Jim_SetResultString(interp, target_name(get_current_target(cmd_ctx)), -1);
struct target *target = get_current_target_or_null(cmd_ctx);
if (target)
Jim_SetResultString(interp, target_name(target), -1);
return JIM_OK;
}