public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] Correct logical error in NetBSD's read_memory and write_memory
@ 2020-10-07 13:24 Kamil Rytarowski
  0 siblings, 0 replies; only message in thread
From: Kamil Rytarowski @ 2020-10-07 13:24 UTC (permalink / raw)
  To: gdb-patches

In case of repeated ptrace PT_IO call and returning the value of
transferred bytes equal to 0, do not return without setting
xfered_len.

Merging as obvious and hot fix.

gdb/ChangeLog:

        * nat/netbsd-nat.c (write_memory, read_memory): Update.
---
 gdb/ChangeLog        | 4 ++++
 gdb/nat/netbsd-nat.c | 4 ++--
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4dc729c69bc..300bf139b7f 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2020-10-07  Kamil Rytarowski  <n54@gmx.com>
+
+	* nat/netbsd-nat.c (write_memory, read_memory): Update.
+
 2020-10-07  Kamil Rytarowski  <n54@gmx.com>

 	* nat/netbsd-nat.c (write_memory, read_memory): Add.
diff --git a/gdb/nat/netbsd-nat.c b/gdb/nat/netbsd-nat.c
index cae9cc2fc2c..e0b61cd4b24 100644
--- a/gdb/nat/netbsd-nat.c
+++ b/gdb/nat/netbsd-nat.c
@@ -238,7 +238,7 @@ write_memory (pid_t pid, unsigned const char *writebuf, CORE_ADDR offset,
 	      return errno;
 	    }
 	  if (io.piod_len == 0)
-	    return 0;
+	    break;

 	  bytes_written += io.piod_len;
 	  io.piod_len = len - bytes_written;
@@ -276,7 +276,7 @@ read_memory (pid_t pid, unsigned char *readbuf, CORE_ADDR offset,
 	  if (rv == -1)
 	    return errno;
 	  if (io.piod_len == 0)
-	    return 0;
+	    break;

 	  bytes_read += io.piod_len;
 	  io.piod_len = len - bytes_read;
--
2.28.0

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-10-07 13:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-07 13:24 [PATCH] Correct logical error in NetBSD's read_memory and write_memory Kamil Rytarowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).