summaryrefslogtreecommitdiff
path: root/src/rtos/rtos.c
diff options
context:
space:
mode:
authorAlan Bowman <alan.michael.bowman@gmail.com>2011-05-11 12:12:07 +0100
committerØyvind Harboe <oyvind.harboe@zylin.com>2011-05-14 16:59:29 +0200
commit6349a47ebc860681e4dbf3bffa31273c911dc7dd (patch)
tree6fba64fe983747be72fc4d6e511de8a785f3bee0 /src/rtos/rtos.c
parent53c0fb6ef5edd2292c29d048c93f73e2be5fa4ba (diff)
downloadopenocd+libswd-6349a47ebc860681e4dbf3bffa31273c911dc7dd.tar.gz
openocd+libswd-6349a47ebc860681e4dbf3bffa31273c911dc7dd.tar.bz2
openocd+libswd-6349a47ebc860681e4dbf3bffa31273c911dc7dd.tar.xz
openocd+libswd-6349a47ebc860681e4dbf3bffa31273c911dc7dd.zip
Correct stacking direction and use of address offset
Diffstat (limited to 'src/rtos/rtos.c')
-rw-r--r--src/rtos/rtos.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rtos/rtos.c b/src/rtos/rtos.c
index 9a4af749..d69127e5 100644
--- a/src/rtos/rtos.c
+++ b/src/rtos/rtos.c
@@ -533,7 +533,7 @@ int rtos_generic_stack_read( struct target * target, const struct rtos_register_
{
address -= stacking->stack_registers_size;
}
- retval = target_read_buffer( target, stack_ptr, stacking->stack_registers_size, stack_data);
+ retval = target_read_buffer( target, address, stacking->stack_registers_size, stack_data);
if ( retval != ERROR_OK )
{
LOG_OUTPUT("Error reading stack frame from FreeRTOS thread\r\n");
@@ -553,7 +553,7 @@ int rtos_generic_stack_read( struct target * target, const struct rtos_register_
}
*hex_reg_list = (char*)malloc( list_size*2 +1 );
tmp_str_ptr = *hex_reg_list;
- new_stack_ptr = stack_ptr + stacking->stack_growth_direction * stacking->stack_registers_size;
+ new_stack_ptr = stack_ptr - stacking->stack_growth_direction * stacking->stack_registers_size;
for( i = 0; i < stacking->num_output_registers; i++ )
{
int j;