From: Mark Wielaard Date: Thu, 25 Jan 2018 13:37:17 +0000 (+0100) Subject: tests: Check symtabshdr instead of symtabndx in elfstrmerge.c. X-Git-Tag: elfutils-0.171~83 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4407903a7433327dbeda74519d036fc82ef64de3;p=platform%2Fupstream%2Felfutils.git tests: Check symtabshdr instead of symtabndx in elfstrmerge.c. Some gcc omptimization levels (-Og in particular) didn't see that when symtabndx != 0, then symtabshdr was certain to be initialized. Change the symtabndx == 0 check to symtabshdr == NULL and initialize symtabshdr to work around that. Signed-off-by: Mark Wielaard --- diff --git a/tests/ChangeLog b/tests/ChangeLog index 758f20e..be203ad 100644 --- a/tests/ChangeLog +++ b/tests/ChangeLog @@ -1,3 +1,8 @@ +2018-01-25 Mark Wielaard + + * elfstrmerge.c (main): Initialize and check symtabshdr instead of + symtabndx. + 2018-01-14 Petr Machata * testfile-sizes4.o.bz2: New test file. @@ -12,9 +17,9 @@ 2017-12-11 Dima Kogan - * run-aggregate-size.sh: Added check for multi-dimensional arrays. - * run-peel-type.sh: Likewise. - * testfile-sizes3.o.bz2: Likewise. + * run-aggregate-size.sh: Added check for multi-dimensional arrays. + * run-peel-type.sh: Likewise. + * testfile-sizes3.o.bz2: Likewise. 2017-12-07 Mark Wielaard diff --git a/tests/elfstrmerge.c b/tests/elfstrmerge.c index 8d5b53c..6924d0e 100644 --- a/tests/elfstrmerge.c +++ b/tests/elfstrmerge.c @@ -195,7 +195,7 @@ main (int argc, char **argv) size_t symtabndx = 0; Elf_Scn *symtabscn = NULL; GElf_Shdr symtabshdr_mem; - GElf_Shdr *symtabshdr; + GElf_Shdr *symtabshdr = NULL; while ((symtabscn = elf_nextscn (elf, symtabscn)) != NULL) { symtabshdr = gelf_getshdr (symtabscn, &symtabshdr_mem); @@ -210,7 +210,7 @@ main (int argc, char **argv) } } - if (symtabndx == 0) + if (symtabshdr == NULL) fail ("No symtab found", fname); if ((symtabshdr->sh_flags & SHF_ALLOC) != 0)