summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ldso/ldso/arm/elfinterp.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/ldso/ldso/arm/elfinterp.c b/ldso/ldso/arm/elfinterp.c
index 5ae85dd2e..d8dcb52ac 100644
--- a/ldso/ldso/arm/elfinterp.c
+++ b/ldso/ldso/arm/elfinterp.c
@@ -186,9 +186,9 @@ _dl_do_reloc (struct elf_resolve *tpnt,struct r_scope_elem *scope,
{
int reloc_type;
int symtab_index;
+ char *symname;
unsigned long *reloc_addr;
unsigned long symbol_addr;
- const Elf32_Sym *def = 0;
struct symbol_ref sym_ref;
struct elf_resolve *def_mod = 0;
int goof = 0;
@@ -200,10 +200,11 @@ _dl_do_reloc (struct elf_resolve *tpnt,struct r_scope_elem *scope,
symbol_addr = 0;
sym_ref.sym = &symtab[symtab_index];
sym_ref.tpnt = NULL;
+ symname = strtab + symtab[symtab_index].st_name;
if (symtab_index) {
- symbol_addr = _dl_find_hash(strtab + symtab[symtab_index].st_name,
- scope, tpnt, elf_machine_type_class(reloc_type), &sym_ref);
+ symbol_addr = _dl_find_hash(symname, scope, tpnt,
+ elf_machine_type_class(reloc_type), &sym_ref);
/*
* We want to allow undefined references to weak symbols - this might