From: Alan Modra Date: Fri, 16 Aug 2019 05:47:23 +0000 (+0930) Subject: PR24909, Uninitialized use on stack in readelf X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=0b8b76098ff3d3dcd0c621f2e45cc0b4e7211d6a;p=deliverable%2Fbinutils-gdb.git PR24909, Uninitialized use on stack in readelf PR 24909 PR 23499 * readelf.c (get_symbol_version_string): Set sym_info earlier. --- diff --git a/binutils/ChangeLog b/binutils/ChangeLog index b7bdfce91c..cf8eea7fca 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2019-08-16 Alan Modra + + PR 24909 + PR 23499 + * readelf.c (get_symbol_version_string): Set sym_info earlier. + 2019-08-15 Nick Clifton PR 24767 diff --git a/binutils/readelf.c b/binutils/readelf.c index b90d3bc885..cc168163b2 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -11528,6 +11528,7 @@ get_symbol_version_string (Filedata * filedata, if ((vers_data & VERSYM_HIDDEN) == 0 && vers_data == 0) return NULL; + *sym_info = (vers_data & VERSYM_HIDDEN) != 0 ? symbol_hidden : symbol_public; max_vd_ndx = 0; /* Usually we'd only see verdef for defined symbols, and verneed for @@ -11593,12 +11594,8 @@ get_symbol_version_string (Filedata * filedata, ivda.vda_name = BYTE_GET (evda.vda_name); if (psym->st_name != ivda.vda_name) - { - *sym_info = ((vers_data & VERSYM_HIDDEN) != 0 - ? symbol_hidden : symbol_public); - return (ivda.vda_name < strtab_size - ? strtab + ivda.vda_name : _("")); - } + return (ivda.vda_name < strtab_size + ? strtab + ivda.vda_name : _("")); } } }