rtos/ThreadX: added check for NULL-named tasks
Thread name loading was not correctly handled if a ThreadX task has a NULL name. Signed-off-by: Giulio Fieramosca <giulio@glgprograms.it> Change-Id: I03071930182bc2585b61ce5d8c67491710883dd6 Reviewed-on: https://review.openocd.org/c/openocd/+/7328 Tested-by: jenkins Reviewed-by: Tomas Vanek <vanekt@fbl.cz> Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
This commit is contained in:
parent
2bad55bf83
commit
2e9f04c11a
|
@ -370,16 +370,21 @@ static int threadx_update_threads(struct rtos *rtos)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Read the thread name */
|
/* Read the thread name */
|
||||||
retval =
|
tmp_str[0] = '\x00';
|
||||||
target_read_buffer(rtos->target,
|
|
||||||
name_ptr,
|
/* Check if thread has a valid name */
|
||||||
THREADX_THREAD_NAME_STR_SIZE,
|
if (name_ptr != 0) {
|
||||||
(uint8_t *)&tmp_str);
|
retval =
|
||||||
if (retval != ERROR_OK) {
|
target_read_buffer(rtos->target,
|
||||||
LOG_ERROR("Error reading thread name from ThreadX target");
|
name_ptr,
|
||||||
return retval;
|
THREADX_THREAD_NAME_STR_SIZE,
|
||||||
|
(uint8_t *)&tmp_str);
|
||||||
|
if (retval != ERROR_OK) {
|
||||||
|
LOG_ERROR("Error reading thread name from ThreadX target");
|
||||||
|
return retval;
|
||||||
|
}
|
||||||
|
tmp_str[THREADX_THREAD_NAME_STR_SIZE - 1] = '\x00';
|
||||||
}
|
}
|
||||||
tmp_str[THREADX_THREAD_NAME_STR_SIZE-1] = '\x00';
|
|
||||||
|
|
||||||
if (tmp_str[0] == '\x00')
|
if (tmp_str[0] == '\x00')
|
||||||
strcpy(tmp_str, "No Name");
|
strcpy(tmp_str, "No Name");
|
||||||
|
|
Loading…
Reference in New Issue