summaryrefslogtreecommitdiff
path: root/binfile.c
diff options
context:
space:
mode:
authorSoren Sandmann <sandmann@daimi.au.dk>2007-10-22 04:41:27 +0000
committerSøren Sandmann Pedersen <ssp@src.gnome.org>2007-10-22 04:41:27 +0000
commita7b39cf5177f4816c22ac3b39111537e87a39d99 (patch)
tree1c89b18f356b6efbdb82a3c0f7671a602b515680 /binfile.c
parente33a7f9a2f326e4bb8bfa9083cd3cbd2cd7d4be2 (diff)
Don't discard weak symbols.
2007-10-22 Soren Sandmann <sandmann@daimi.au.dk> * elfparser.c (read_table): Don't discard weak symbols. * elfparser.c (elf_parser_lookup_symbol): If the symbol has unknown size, don't check that the address is in range. svn path=/trunk/; revision=381
Diffstat (limited to 'binfile.c')
-rw-r--r--binfile.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/binfile.c b/binfile.c
index bffa39f..d8d335c 100644
--- a/binfile.c
+++ b/binfile.c
@@ -353,19 +353,24 @@ const BinSymbol *
bin_file_lookup_symbol (BinFile *bin_file,
gulong address)
{
+#if 0
+ g_print ("-=-=-=- \n");
+#endif
+
if (bin_file->elf)
{
#if 0
g_print ("bin file lookup lookup %d\n", address);
#endif
+
address -= bin_file->text_offset;
- const ElfSym *sym = elf_parser_lookup_symbol (bin_file->elf, address);
-
#if 0
g_print ("lookup %d in %s\n", address, bin_file->filename);
#endif
+ const ElfSym *sym = elf_parser_lookup_symbol (bin_file->elf, address);
+
if (sym)
{
#if 0