aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2003-01-29 08:29:34 +0000
committerAlexandre Oliva <aoliva@redhat.com>2003-01-29 08:29:34 +0000
commit38985a1cb4890f44601f781654c6d79485634120 (patch)
tree48732a1cc038e18d4f90250bbf82abd9ad04eb81 /bfd
parent1dc0220c4f346b3cc732bf02de650df703cda48c (diff)
downloadgdb-38985a1cb4890f44601f781654c6d79485634120.zip
gdb-38985a1cb4890f44601f781654c6d79485634120.tar.gz
gdb-38985a1cb4890f44601f781654c6d79485634120.tar.bz2
* elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference
entry->abfd when it's NULL.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elfxx-mips.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index d75b0ee..53e6b07 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2003-01-29 Alexandre Oliva <aoliva@redhat.com>
+
+ * elfxx-mips.c (mips_elf_got_entry_hash): Don't dereference
+ entry->abfd when it's NULL.
+
2003-01-27 Alexandre Oliva <aoliva@redhat.com>
* elfxx-mips.c (mips_elf_create_dynamic_relocation): Handle
diff --git a/bfd/elfxx-mips.c b/bfd/elfxx-mips.c
index 12d898e..22cc8a2 100644
--- a/bfd/elfxx-mips.c
+++ b/bfd/elfxx-mips.c
@@ -1584,10 +1584,11 @@ mips_elf_got_entry_hash (entry_)
{
const struct mips_got_entry *entry = (struct mips_got_entry *)entry_;
- return entry->abfd->id + entry->symndx
+ return entry->symndx
+ (! entry->abfd ? mips_elf_hash_bfd_vma (entry->d.address)
- : entry->symndx >= 0 ? mips_elf_hash_bfd_vma (entry->d.addend)
- : entry->d.h->root.root.root.hash);
+ : entry->abfd->id
+ + (entry->symndx >= 0 ? mips_elf_hash_bfd_vma (entry->d.addend)
+ : entry->d.h->root.root.root.hash));
}
static int