summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog6
-rw-r--r--bfd/elf32-i386.c8
2 files changed, 11 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index d8d658682b..ef6e817cc2 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,7 @@
+2007-07-27 Michael Snyder <msnyder@access-company.com>
+
+ * elf32-i386.c (elf_i386_check_relocs): Check for null pointer.
+
2007-07-27 H.J. Lu <hongjiu.lu@intel.com>
* config.bfd (x86_64-*-mingw*): Don't include x86_64coff_vec.
@@ -473,7 +477,7 @@
(elf32_arm_final_link_relocate): Turn call to undefined symbol
into a jump to the next instruction.
-2007-06-29 Michael Snyder <msnyder@svkmacdonelllnx>
+2007-06-29 Michael Snyder <msnyder@access-company.com>
* bfd.c (bfd_demangle): Plug memory leak (Coverity).
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index abac6b2d10..c50e98d92b 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -1270,14 +1270,18 @@ elf_i386_check_relocs (bfd *abfd,
/* This relocation describes the C++ object vtable hierarchy.
Reconstruct it for later use during GC. */
case R_386_GNU_VTINHERIT:
- if (!bfd_elf_gc_record_vtinherit (abfd, sec, h, rel->r_offset))
+ BFD_ASSERT (h != NULL);
+ if (h != NULL
+ && !bfd_elf_gc_record_vtinherit (abfd, sec, h, rel->r_offset))
return FALSE;
break;
/* This relocation describes which C++ vtable entries are actually
used. Record for later use during GC. */
case R_386_GNU_VTENTRY:
- if (!bfd_elf_gc_record_vtentry (abfd, sec, h, rel->r_offset))
+ BFD_ASSERT (h != NULL);
+ if (h != NULL
+ && !bfd_elf_gc_record_vtentry (abfd, sec, h, rel->r_offset))
return FALSE;
break;