If you hit ctrl-c while using the ThreadX RTOS plugin if all threads are suspended you will see something like the following when you try to continue:
(gdb) c
Continuing.
Cannot execute this command without a live selected thread
The fix is pretty straigtforward... if no thread is active set the current thread to be the current execution
diff --git a/src/rtos/ThreadX.c b/src/rtos/ThreadX.c
index ab8a66e9..fb4a4e7a 100644
--- a/src/rtos/ThreadX.c
+++ b/src/rtos/ThreadX.c
@@ -318,6 +318,7 @@ static int ThreadX_update_threads(struct rtos *rtos)
rtos->thread_details = malloc(
sizeof(struct thread_detail) * thread_list_size);
rtos->thread_details->threadid = 1;
+ rtos->current_thread = 1;
rtos->thread_details->exists = true;
rtos->thread_details->extra_info_str = NULL;
rtos->thread_details->thread_name_str = malloc(sizeof(tmp_str));
This seems like a reasonable change. Have you considered submitting a patch via Gerrit? More information can be found here: http://openocd.org/doc/doxygen/html/patchguide.html