This is the mail archive of the gdb-cvs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] gdbserver/proc-service.c: bogus return value conversion


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ab29043019ae2aaebe686d15aa460780280b6f66

commit ab29043019ae2aaebe686d15aa460780280b6f66
Author: Pedro Alves <palves@redhat.com>
Date:   Thu Aug 27 13:37:01 2015 +0100

    gdbserver/proc-service.c: bogus return value conversion
    
    Building in C++ mode shows:
    
       int write_inferior_memory (CORE_ADDR memaddr, const unsigned char *myaddr,
           ^
      src/gdb/gdbserver/proc-service.c:93:64: error: invalid conversion from â??intâ?? to â??ps_err_eâ?? [-fpermissive]
         return write_inferior_memory ((unsigned long) addr, buf, size);
    								  ^
    
    It only works today by accident, write_inferior_memory does not return
    a ps_err_e.
    
    gdb/gdbserver/ChangeLog:
    2015-08-27  Pedro Alves  <palves@redhat.com>
    
    	* proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.

Diff:
---
 gdb/gdbserver/ChangeLog      | 4 ++++
 gdb/gdbserver/proc-service.c | 4 +++-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 5b9b170..0be3030 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,7 @@
+2015-08-27  Pedro Alves  <palves@redhat.com>
+
+	* proc-service.c (ps_pdwrite): Return PS_ERR/PS_OK explicily.
+
 2015-08-26  Simon Marchi  <simon.marchi@ericsson.com>
 
 	* ax.c (gdb_parse_agent_expr): Likewise.
diff --git a/gdb/gdbserver/proc-service.c b/gdb/gdbserver/proc-service.c
index f36e3fb..128939d 100644
--- a/gdb/gdbserver/proc-service.c
+++ b/gdb/gdbserver/proc-service.c
@@ -90,7 +90,9 @@ ps_err_e
 ps_pdwrite (gdb_ps_prochandle_t ph, psaddr_t addr,
 	    gdb_ps_write_buf_t buf, gdb_ps_size_t size)
 {
-  return write_inferior_memory ((unsigned long) addr, buf, size);
+  if (write_inferior_memory ((unsigned long) addr, buf, size) != 0)
+    return PS_ERR;
+  return PS_OK;
 }
 
 /* Get the general registers of LWP LWPID within the target process PH


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]