From 7345801b69d2511252d587159bb9758532797233 Mon Sep 17 00:00:00 2001 From: Tomas Vanek Date: Wed, 9 Jan 2019 13:01:50 +0100 Subject: [PATCH] target: do not allow 'target create' after init A target created after init lacks target_init_one() call and is not added to gdb targets. Steps to reproduce: - start OpenOCD with a dap target - connect by telnet target create ap0.mem mem_ap -dap $_CHIPNAME.dap -ap-num 0 reset Segmentation fault is rised because target->check_reset is NULL. Change-Id: I2a62f3b450e4db3005c7041a22fb8f952e68c3b6 Signed-off-by: Tomas Vanek Reviewed-on: http://openocd.zylin.com/4842 Tested-by: jenkins Reviewed-by: Antonio Borneo --- src/target/target.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/target/target.c b/src/target/target.c index b4bf5d355..7e30d789b 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -5882,8 +5882,7 @@ static const struct command_registration target_subcommand_handlers[] = { }, { .name = "create", - /* REVISIT this should be COMMAND_CONFIG ... */ - .mode = COMMAND_ANY, + .mode = COMMAND_CONFIG, .jim_handler = jim_target_create, .usage = "name type '-chain-position' name [options ...]", .help = "Creates and selects a new target",