From: Paul Fertser Date: Thu, 15 May 2014 18:17:13 +0000 (+0400) Subject: src/target: select the last created target as current X-Git-Tag: v0.9.0-rc1~395 X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=commitdiff_plain;h=9744a2fa20ad64baef19243bcc984bc5f5f8fcc3;hp=fb5e099af83a17821e6962b6e632582cb5033a66 src/target: select the last created target as current Configuration commands assume the last created target is the one they should be applied to. An example of this is sourcing an stm32f1.cfg several times to access several microcontrollers on the same JTAG chain where cortex_m reset_config should apply to the target that was just created, not to the first one. This fixes http://sourceforge.net/p/openocd/tickets/71/ . Change-Id: I1ca41cc05fe5f36c4bc62dde4614da1405754fd8 Reported-by: Michael Eischer Signed-off-by: Paul Fertser Reviewed-on: http://openocd.zylin.com/2142 Tested-by: jenkins Reviewed-by: Freddie Chopin Reviewed-by: Spencer Oliver --- diff --git a/src/target/target.c b/src/target/target.c index 4d277c694b..87b3d1cbc9 100644 --- a/src/target/target.c +++ b/src/target/target.c @@ -5104,6 +5104,7 @@ static int target_create(Jim_GetOptInfo *goi) target = calloc(1, sizeof(struct target)); /* set target number */ target->target_number = new_target_number(); + cmd_ctx->current_target = target->target_number; /* allocate memory for each unique target type */ target->type = calloc(1, sizeof(struct target_type));