PR25842, Null pointer dereference in nm-new

Alan Modra amodra@gmail.com
Fri Apr 17 01:29:56 GMT 2020


	PR 25842
	* elf.c (_bfd_elf_get_symbol_version_string): Don't segfault on
	NULL nodename.

diff --git a/bfd/elf.c b/bfd/elf.c
index 3d2eee9ea8..f3364eeddf 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -1911,8 +1911,12 @@ _bfd_elf_get_symbol_version_string (bfd *abfd, asymbol *symbol,
 	{
 	  const char *nodename
 	    = elf_tdata (abfd)->verdef[vernum - 1].vd_nodename;
-	  version_string = ((base_p || strcmp (symbol->name, nodename))
-			    ? nodename : "");
+	  version_string = "";
+	  if (base_p
+	      || nodename == NULL
+	      || symbol->name == NULL
+	      || strcmp (symbol->name, nodename) != 0)
+	    version_string = nodename;
 	}
       else
 	{

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list