[PATCH] libdwfl: Make sure symstrdata->d_buf != NULL in relocate resolve_symbol.
Mark Wielaard
mjw at redhat.com
Thu Dec 18 08:31:30 UTC 2014
Signed-off-by: Mark Wielaard <mjw at redhat.com>
---
libdwfl/ChangeLog | 4 ++++
libdwfl/relocate.c | 3 ++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index 3658576..f6db301 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-18 Mark Wielaard <mjw at redhat.com>
+
+ * relocate.c (resolve_symbol): Make sure symstrdata->d_buf != NULL.
+
2014-12-13 Mark Wielaard <mjw at redhat.com>
* dwfl_module_getdwarf.c (find_dynsym): elf_getdata_rawchunk takes
diff --git a/libdwfl/relocate.c b/libdwfl/relocate.c
index fd7dbd5..e102e1e 100644
--- a/libdwfl/relocate.c
+++ b/libdwfl/relocate.c
@@ -206,7 +206,8 @@ resolve_symbol (Dwfl_Module *referer, struct reloc_symtab_cache *symtab,
symtab->symstrdata = elf_getdata (elf_getscn (symtab->symelf,
symtab->strtabndx),
NULL);
- if (unlikely (symtab->symstrdata == NULL))
+ if (unlikely (symtab->symstrdata == NULL
+ || symtab->symstrdata->d_buf == NULL))
return DWFL_E_LIBELF;
}
if (unlikely (sym->st_name >= symtab->symstrdata->d_size))
--
1.8.3.1
More information about the elfutils-devel
mailing list