- Testing shdr makes no sense, that pointer was dereferenced several times throughout the section. destshdr on the other hand is not tested at all. Signed-off-by: Petr Machata --- src/ChangeLog | 4 ++++ src/readelf.c | 2 +- 2 files changed, 5 insertions(+), 1 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index aa98608..a252cdc 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2014-09-14 Petr Machata + + * readelf.c (handle_relocs_rela): Typo fix, test DESTSHDR properly. + 2014-09-12 Petr Machata * readelf.c (encoded_ptr_size): In the switch statement, change diff --git a/src/readelf.c b/src/readelf.c index 7b43a65..4d3bb36 100644 --- a/src/readelf.c +++ b/src/readelf.c @@ -2090,7 +2090,7 @@ handle_relocs_rela (Ebl *ebl, GElf_Ehdr *ehdr, Elf_Scn *scn, GElf_Shdr *shdr) ? xndx : sym->st_shndx), &destshdr_mem); - if (unlikely (shdr == NULL)) + if (unlikely (destshdr == NULL)) printf (" %#0*" PRIx64 " %-15s <%s %ld>\n", class == ELFCLASS32 ? 10 : 18, rel->r_offset, ebl_reloc_type_check (ebl, GELF_R_TYPE (rel->r_info)) -- 1.7.6.5