rtos: run rtos create hook only once on autodetect
Whenever a "qSymbol" from gdb is received, the rtos "create" function was called. Make sure this happens only once and only if rtos autodetection is used. Change-Id: Ie5f8632cfce2d64a38dbdb63468302c4e8a784f4 Signed-off-by: Matthias Welwarsky <matthias.welwarsky@sysgo.com> Reviewed-on: http://openocd.zylin.com/3998 Tested-by: jenkins Reviewed-by: Sergey A. Borshch <sb-sf@users.sourceforge.net> Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>riscv-compliance-dev
parent
293fb9b25f
commit
3aa8bd2d17
|
@ -346,9 +346,11 @@ int rtos_thread_packet(struct connection *connection, char const *packet, int pa
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
} else if (strncmp(packet, "qSymbol", 7) == 0) {
|
} else if (strncmp(packet, "qSymbol", 7) == 0) {
|
||||||
if (rtos_qsymbol(connection, packet, packet_size) == 1) {
|
if (rtos_qsymbol(connection, packet, packet_size) == 1) {
|
||||||
target->rtos_auto_detect = false;
|
if (target->rtos_auto_detect == true) {
|
||||||
target->rtos->type->create(target);
|
target->rtos_auto_detect = false;
|
||||||
target->rtos->type->update_threads(target->rtos);
|
target->rtos->type->create(target);
|
||||||
|
target->rtos->type->update_threads(target->rtos);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
} else if (strncmp(packet, "qfThreadInfo", 12) == 0) {
|
} else if (strncmp(packet, "qfThreadInfo", 12) == 0) {
|
||||||
|
|
Loading…
Reference in New Issue