aboutsummaryrefslogtreecommitdiff
path: root/src/target/target.c
diff options
context:
space:
mode:
authorAntonio Borneo <borneo.antonio@gmail.com>2020-10-23 16:45:35 +0200
committerAntonio Borneo <borneo.antonio@gmail.com>2020-11-04 17:38:20 +0000
commit65de0d3bfa14c59c2fea31a2974dd3492ac3320d (patch)
treee566828edaea620c6175866cf7d5483cd314b329 /src/target/target.c
parente2e8a5f467e8e35618ce4fbf16b8da4e682d8258 (diff)
downloadriscv-openocd-65de0d3bfa14c59c2fea31a2974dd3492ac3320d.zip
riscv-openocd-65de0d3bfa14c59c2fea31a2974dd3492ac3320d.tar.gz
riscv-openocd-65de0d3bfa14c59c2fea31a2974dd3492ac3320d.tar.bz2
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
Diffstat (limited to 'src/target/target.c')
-rw-r--r--src/target/target.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/target/target.c b/src/target/target.c
index 9443f6c..e2e614f 100644
--- a/src/target/target.c
+++ b/src/target/target.c
@@ -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;
}