This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] gdbserver/proc-service.c: bogus return value conversion
- From: Pedro Alves <palves at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 27 Aug 2015 12:37:22 -0000
- Subject: [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