diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/gdbserver/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/gdbserver/lynx-low.c | 12 |
2 files changed, 12 insertions, 5 deletions
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 5a42642..0c25069 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,8 @@ +2014-11-17 Joel Brobecker <brobecker@adacore.com> + + * lynx-low.c (lynx_write_memory): Put lynx_read_memory and + corresponding ERRNO check in same block. + 2014-11-12 Pedro Alves <palves@redhat.com> * server.c (cont_thread): Update comment. diff --git a/gdb/gdbserver/lynx-low.c b/gdb/gdbserver/lynx-low.c index 96dea03..6178e03 100644 --- a/gdb/gdbserver/lynx-low.c +++ b/gdb/gdbserver/lynx-low.c @@ -688,11 +688,13 @@ lynx_write_memory (CORE_ADDR memaddr, const unsigned char *myaddr, int len) if (addr + xfer_size > memaddr + len) truncate = addr + xfer_size - memaddr - len; if (skip > 0 || truncate > 0) - /* We need to read the memory at this address in order to preserve - the data that we are not overwriting. */ - lynx_read_memory (addr, (unsigned char *) &buf, xfer_size); - if (errno) - return errno; + { + /* We need to read the memory at this address in order to preserve + the data that we are not overwriting. */ + lynx_read_memory (addr, (unsigned char *) &buf, xfer_size); + if (errno) + return errno; + } memcpy ((gdb_byte *) &buf + skip, myaddr + (addr - memaddr) + skip, xfer_size - skip - truncate); errno = 0; |