(elf_machine_rel): DT_STRTAB is already relocated.
This commit is contained in:
parent
3e3649f6e2
commit
44bff56804
@ -1,5 +1,5 @@
|
||||
/* Machine-dependent ELF dynamic relocation inline functions. ARM version.
|
||||
Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
|
||||
Copyright (C) 1995, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -405,8 +405,7 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
|
||||
{
|
||||
const char *strtab;
|
||||
|
||||
strtab = ((const char *) map->l_addr
|
||||
+ map->l_info[DT_STRTAB]->d_un.d_ptr);
|
||||
strtab = (const void *) map->l_info[DT_STRTAB]->d_un.d_ptr;
|
||||
_dl_sysdep_error (_dl_argv[0] ?: "<program name unknown>",
|
||||
": Symbol `", strtab + refsym->st_name,
|
||||
"' has different size in shared object, "
|
||||
@ -417,9 +416,9 @@ elf_machine_rel (struct link_map *map, const Elf32_Rel *reloc,
|
||||
break;
|
||||
case R_ARM_GLOB_DAT:
|
||||
case R_ARM_JUMP_SLOT:
|
||||
#ifdef RTLD_BOOTSTRAP
|
||||
#ifdef RTLD_BOOTSTRAP
|
||||
/* Fix weak undefined references. */
|
||||
if (sym != NULL && sym->st_value == 0)
|
||||
if (sym != NULL && sym->st_value == 0)
|
||||
*reloc_addr = 0;
|
||||
else
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user