From fdb7a1705dde13d15cbe619089919ca412445dba Mon Sep 17 00:00:00 2001
From: oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
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 fad7412ca..c98a9cf52 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 52f256a57..0ebe56cb4 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.
-- 
GitLab