diff options
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/elf64-hppa.c | 4 |
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; |