From fdb7a1705dde13d15cbe619089919ca412445dba Mon Sep 17 00:00:00 2001 From: oharboe Date: Fri, 24 Oct 2008 07:18:13 +0000 Subject: [PATCH] gdb_report_data_abort now ignores all target read errors, including address space wraps. Hopefully works around problems in 6.8 git-svn-id: svn://svn.berlios.de/openocd/trunk@1099 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/helper/startup.tcl | 16 ++++++++-------- src/server/gdb_server.c | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/helper/startup.tcl b/src/helper/startup.tcl index fad7412c..c98a9cf5 100644 --- a/src/helper/startup.tcl +++ b/src/helper/startup.tcl @@ -119,23 +119,23 @@ proc target_script {target_num eventname scriptname} { set tname [target number $target_num] if { 0 == [string compare $eventname "reset"] } { - $tname configure -event reset-init "script $scriptname" - return + $tname configure -event reset-init "script $scriptname" + return } if { 0 == [string compare $eventname "post_reset"] } { - $tname configure -event reset-init "script $scriptname" - return + $tname configure -event reset-init "script $scriptname" + return } if { 0 == [string compare $eventname "pre_reset"] } { - $tname configure -event reset-start "script $scriptname" - return + $tname configure -event reset-start "script $scriptname" + return } if { 0 == [string compare $eventname "gdb_program_config"] } { - $tname configure -event old-gdb_program_config "script $scriptname" - return + $tname configure -event old-gdb_program_config "script $scriptname" + return } return -code error "Unknown target (old) event: $eventname (try $tname configure -event NAME)" diff --git a/src/server/gdb_server.c b/src/server/gdb_server.c index 52f256a5..0ebe56cb 100644 --- a/src/server/gdb_server.c +++ b/src/server/gdb_server.c @@ -1138,7 +1138,7 @@ int gdb_read_memory_packet(connection_t *connection, target_t *target, char *pac retval = target_read_buffer(target, addr, len, buffer); - if ((retval == ERROR_TARGET_DATA_ABORT) && (!gdb_report_data_abort)) + if ((retval!=ERROR_OK)&&!gdb_report_data_abort) { /* TODO : Here we have to lie and send back all zero's lest stack traces won't work. * At some point this might be fixed in GDB, in which case this code can be removed. -- 2.39.5