aboutsummaryrefslogtreecommitdiff
path: root/bfd
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2003-12-12 14:11:58 +0000
committerAlan Modra <amodra@gmail.com>2003-12-12 14:11:58 +0000
commitac7bbf74d3daf2b77d0ac2dc073ce5cb1fd44517 (patch)
treefd89c73f338d5795031645edef1c2b3f16f907d1 /bfd
parent1b80b9a026cec672d30e31b29c02088deebf51c8 (diff)
downloadgdb-ac7bbf74d3daf2b77d0ac2dc073ce5cb1fd44517.zip
gdb-ac7bbf74d3daf2b77d0ac2dc073ce5cb1fd44517.tar.gz
gdb-ac7bbf74d3daf2b77d0ac2dc073ce5cb1fd44517.tar.bz2
* elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Check for
NULL dyn_h.
Diffstat (limited to 'bfd')
-rw-r--r--bfd/ChangeLog5
-rw-r--r--bfd/elf64-hppa.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 648b690..a76a1ed 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,8 @@
+2003-12-12 Alan Modra <amodra@bigpond.net.au>
+
+ * elf64-hppa.c (elf64_hppa_link_output_symbol_hook): Check for
+ NULL dyn_h.
+
2003-12-11 Nick Clifton <nickc@redhat.com>
* elf.c (INCLUDE_SECTION_IN_SEGMENT): Skip PT_GNU_STACK segments.
diff --git a/bfd/elf64-hppa.c b/bfd/elf64-hppa.c
index 36c27c4..06aff7b 100644
--- a/bfd/elf64-hppa.c
+++ b/bfd/elf64-hppa.c
@@ -1912,7 +1912,7 @@ elf64_hppa_link_output_symbol_hook (info, name, sym, input_sec, h)
hppa_info = elf64_hppa_hash_table (info);
dyn_h = elf64_hppa_dyn_hash_lookup (&hppa_info->dyn_hash_table,
name, FALSE, FALSE);
- if (dyn_h->h != h)
+ if (!dyn_h || dyn_h->h != h)
return TRUE;
/* Function symbols for which we created .opd entries *may* have been
@@ -1922,7 +1922,7 @@ elf64_hppa_link_output_symbol_hook (info, name, sym, input_sec, h)
into non-dynamic ones, so we initialize st_shndx to -1 in
mark_exported_functions and check to see if it was overwritten
here instead of just checking dyn_h->h->dynindx. */
- if (dyn_h && dyn_h->want_opd && dyn_h->st_shndx != -1)
+ if (dyn_h->want_opd && dyn_h->st_shndx != -1)
{
/* Restore the saved value and section index. */
sym->st_value = dyn_h->st_value;