Convert CORE_ADDR to Python using gdb_py_object_from_ulongest
An internal test failed on a riscv64-elf cross build because Inferior.search_memory returned a negative value. I tracked this down to to use of PyLong_FromLong in infpy_search_memory. Then, I looked at other conversions of CORE_ADDR to Python and fixed these as well. I don't think there is a good way to write a test for this. gdb/ChangeLog 2020-08-17 Tom Tromey <tromey@adacore.com> * python/py-inferior.c (infpy_search_memory): Use gdb_py_object_from_ulongest. * python/py-infevents.c (create_inferior_call_event_object) (create_memory_changed_event_object): Use gdb_py_object_from_ulongest. * python/py-linetable.c (ltpy_entry_get_pc): Use gdb_py_object_from_ulongest.
This commit is contained in:
parent
7635cf797e
commit
b017825fab
4 changed files with 14 additions and 4 deletions
|
@ -48,7 +48,7 @@ create_inferior_call_event_object (inferior_call_kind flag, ptid_t ptid,
|
|||
if (evpy_add_attribute (event.get (), "ptid", ptid_obj.get ()) < 0)
|
||||
return NULL;
|
||||
|
||||
gdbpy_ref<> addr_obj (PyLong_FromLongLong (addr));
|
||||
gdbpy_ref<> addr_obj = gdb_py_object_from_ulongest (addr);
|
||||
if (addr_obj == NULL)
|
||||
return NULL;
|
||||
|
||||
|
@ -97,7 +97,7 @@ create_memory_changed_event_object (CORE_ADDR addr, ssize_t len)
|
|||
if (event == NULL)
|
||||
return NULL;
|
||||
|
||||
gdbpy_ref<> addr_obj (PyLong_FromLongLong (addr));
|
||||
gdbpy_ref<> addr_obj = gdb_py_object_from_ulongest (addr);
|
||||
if (addr_obj == NULL)
|
||||
return NULL;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue