(_dl_addr): DT_SYMTAB and DT_STRTAB entries are already relocated.
authordrepper <drepper>
Sat, 20 Feb 1999 14:41:27 +0000 (14:41 +0000)
committerdrepper <drepper>
Sat, 20 Feb 1999 14:41:27 +0000 (14:41 +0000)
elf/dl-addr.c

index 2c9a9dd..14bff06 100644 (file)
@@ -1,5 +1,5 @@
 /* Locate the shared object symbol nearest a given address.
-   Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
+   Copyright (C) 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
@@ -62,8 +62,8 @@ _dl_addr (const void *address, Dl_info *info)
   info->dli_fname = match->l_name;
   info->dli_fbase = (void *) match->l_addr;
 
-  symtab = ((void *) match->l_addr + match->l_info[DT_SYMTAB]->d_un.d_ptr);
-  strtab = ((void *) match->l_addr + match->l_info[DT_STRTAB]->d_un.d_ptr);
+  symtab = (const void *) match->l_info[DT_SYMTAB]->d_un.d_ptr;
+  strtab = (const void *) match->l_info[DT_STRTAB]->d_un.d_ptr;
 
   /* We assume that the string table follows the symbol table, because
      there is no way in ELF to know the size of the dynamic symbol table!!  */