aboutsummaryrefslogtreecommitdiff
path: root/src/rtos/eCos.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/rtos/eCos.c')
-rw-r--r--src/rtos/eCos.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/rtos/eCos.c b/src/rtos/eCos.c
index f301a35a..cd04d9d9 100644
--- a/src/rtos/eCos.c
+++ b/src/rtos/eCos.c
@@ -179,11 +179,15 @@ static int eCos_update_threads( struct rtos* rtos)
{
thread_list_size++;
retval = target_read_buffer( rtos->target, thread_index + param->thread_next_offset, param->pointer_width, (uint8_t *) &thread_index );
+ if (retval != ERROR_OK)
+ return retval;
} while( thread_index!=first_thread );
// read the current thread id
uint32_t current_thread_addr;
retval = target_read_buffer( rtos->target, rtos->symbols[eCos_VAL_current_thread_ptr].address, 4, (uint8_t *)&current_thread_addr);
+ if (retval != ERROR_OK)
+ return retval;
rtos->current_thread = 0;
retval = target_read_buffer( rtos->target, current_thread_addr + param->thread_uniqueid_offset, 2, (uint8_t *)&rtos->current_thread);
if ( retval != ERROR_OK )