From f2b2af2c9f403ead49de8f0e01a9c149b0b420f9 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Tue, 28 Jun 2016 18:59:33 +0930 Subject: [PATCH] Invalid read in _bfd_elf_get_symbol_version_string PR 20304 * objdump.c (objdump_print_symname): Don't attempt to retrieve version info from synthetic symbols. --- binutils/ChangeLog | 6 ++++++ binutils/objdump.c | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 4f5e225..cfea09b 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,9 @@ +2016-06-28 Alan Modra + + PR 20304 + * objdump.c (objdump_print_symname): Don't attempt to retrieve + version info from synthetic symbols. + 2016-06-24 Alan Modra * objcopy.c (find_section_rename): Forward declare. Remove diff --git a/binutils/objdump.c b/binutils/objdump.c index 174596e..bf9c592 100644 --- a/binutils/objdump.c +++ b/binutils/objdump.c @@ -823,7 +823,8 @@ objdump_print_symname (bfd *abfd, struct disassemble_info *inf, name = alloc; } - version_string = bfd_get_symbol_version_string (abfd, sym, &hidden); + if ((sym->flags & BSF_SYNTHETIC) == 0) + version_string = bfd_get_symbol_version_string (abfd, sym, &hidden); if (bfd_is_und_section (bfd_get_section (sym))) hidden = TRUE; -- 2.7.4