summaryrefslogtreecommitdiff
path: root/libdwfl
diff options
context:
space:
mode:
authorRoland McGrath <roland@redhat.com>2011-02-01 16:09:43 -0800
committerRoland McGrath <roland@redhat.com>2011-02-01 16:09:43 -0800
commit9fdd461bda5fe2921dc0ce91aaba9e21805bbdd2 (patch)
tree4b39e2d894f8fe9b0e868d60337b2975d420bbbc /libdwfl
parentd1c5cb39ec59de9157c253862ac6721f4ca76c7a (diff)
downloadelfutils-9fdd461bda5fe2921dc0ce91aaba9e21805bbdd2.tar.gz
libdwfl: Fix prelink address_sync to find 64-bit PT_INTERP.
Diffstat (limited to 'libdwfl')
-rw-r--r--libdwfl/ChangeLog5
-rw-r--r--libdwfl/dwfl_module_getdwarf.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index 16fb71d3..81b4fcdd 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,8 @@
+2011-02-01 Roland McGrath <roland@redhat.com>
+
+ * dwfl_module_getdwarf.c (find_prelink_address_sync): Fix pasto in
+ last change, so we recognize PT_INTERP in ELFCLASS64 correctly.
+
2011-01-11 Roland McGrath <roland@redhat.com>
* dwfl_module_getdwarf.c (open_elf): Remove section-based
diff --git a/libdwfl/dwfl_module_getdwarf.c b/libdwfl/dwfl_module_getdwarf.c
index 0825722d..83ca8535 100644
--- a/libdwfl/dwfl_module_getdwarf.c
+++ b/libdwfl/dwfl_module_getdwarf.c
@@ -423,9 +423,9 @@ find_prelink_address_sync (Dwfl_Module *mod)
else
{
for (uint_fast16_t i = 0; i < phnum; ++i)
- if (phdr.p32[i].p_type == PT_INTERP)
+ if (phdr.p64[i].p_type == PT_INTERP)
{
- interp = phdr.p32[i].p_vaddr;
+ interp = phdr.p64[i].p_vaddr;
break;
}
}