summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@redhat.com>2009-08-07 10:39:55 -0700
committerUlrich Drepper <drepper@redhat.com>2009-08-07 10:39:55 -0700
commit7bc513cf188fe50e21ad88439f294100ffa20f72 (patch)
tree11ce3167a0d66ce0dc986f0c2fb09431f4f75c57 /elf
parent3aa2588d4a533686d677eb3f6c00c202849df72b (diff)
downloadglibc-7bc513cf188fe50e21ad88439f294100ffa20f72.tar.gz
glibc-7bc513cf188fe50e21ad88439f294100ffa20f72.tar.xz
glibc-7bc513cf188fe50e21ad88439f294100ffa20f72.zip
Fix expanding STB_GNU_UNIQUE hash table.
An invalid symbol name pointer was entered into the hash table while
enlarging it.
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-lookup.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index 56724c9b4d..c1a1366d6f 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -321,7 +321,7 @@ do_lookup_x (const char *undef_name, uint_fast32_t new_hash,
 		    if (table[idx].name == NULL)
 		      {
 			table[idx].hashval = hash;
-			table[idx].name = strtab + sym->st_name;
+			table[idx].name = name;
 			if ((type_class & ELF_RTYPE_CLASS_COPY) != 0)
 			  {
 			    table[idx].sym = ref;