[binutils-gdb] Fix library segment-address for 64bit values
Hannes Domani
ssbssa@sourceware.org
Tue Jan 28 19:02:00 GMT 2020
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a2236a08440996fe2adb5f9b61926db9a9e8c8c3
commit a2236a08440996fe2adb5f9b61926db9a9e8c8c3
Author: Hannes Domani <ssbssa@yahoo.de>
Date: Tue Jan 28 18:24:31 2020 +0100
Fix library segment-address for 64bit values
The address was written as a long value, but long is always a 32bit value
on Windows, which lead to truncated addresses.
The solution was to use paddress instead.
gdb/gdbserver/ChangeLog:
2020-01-28 Hannes Domani <ssbssa@yahoo.de>
* server.c (handle_qxfer_libraries): Write segment-address with
paddress.
Diff:
---
gdb/gdbserver/ChangeLog | 5 +++++
gdb/gdbserver/server.c | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index aeb9cb6..a97e408 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,8 @@
+2020-01-28 Hannes Domani <ssbssa@yahoo.de>
+
+ * server.c (handle_qxfer_libraries): Write segment-address with
+ paddress.
+
2020-01-24 Hannes Domani <ssbssa@yahoo.de>
* Makefile.in (install-strip): New target.
diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c
index 17e79a6..3fc026f 100644
--- a/gdb/gdbserver/server.c
+++ b/gdb/gdbserver/server.c
@@ -1548,8 +1548,8 @@ handle_qxfer_libraries (const char *annex,
for (const dll_info &dll : all_dlls)
document += string_printf
- (" <library name=\"%s\"><segment address=\"0x%lx\"/></library>\n",
- dll.name.c_str (), (long) dll.base_addr);
+ (" <library name=\"%s\"><segment address=\"0x%s\"/></library>\n",
+ dll.name.c_str (), paddress (dll.base_addr));
document += "</library-list>\n";
More information about the Gdb-cvs
mailing list