diff options
author | jdp <jdp@FreeBSD.org> | 1998-09-06 22:57:45 +0000 |
---|---|---|
committer | jdp <jdp@FreeBSD.org> | 1998-09-06 22:57:45 +0000 |
commit | effee09f856ecc81feb91290459a2cda49d20287 (patch) | |
tree | 5c46ac1ee102130859f788aeb927e8086985cfe7 /contrib/binutils/bfd/ieee.c | |
parent | 31cb88078db5bdc51eb451c5a61e31a426fb8ae6 (diff) | |
download | FreeBSD-src-effee09f856ecc81feb91290459a2cda49d20287.zip FreeBSD-src-effee09f856ecc81feb91290459a2cda49d20287.tar.gz |
Import GNU binutils-2.9.1. This will break things for a few minutes
until I've made the commits to resolve the conflicts.
Submitted by: Doug Rabson <dfr>
Diffstat (limited to 'contrib/binutils/bfd/ieee.c')
-rw-r--r-- | contrib/binutils/bfd/ieee.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/contrib/binutils/bfd/ieee.c b/contrib/binutils/bfd/ieee.c index b559208..ab09140 100644 --- a/contrib/binutils/bfd/ieee.c +++ b/contrib/binutils/bfd/ieee.c @@ -1,5 +1,5 @@ /* BFD back-end for ieee-695 objects. - Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 1997 + Copyright (C) 1990, 91, 92, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support. @@ -1646,10 +1646,8 @@ do_one (ieee, current_map, location_ptr, s, iterations) s->flags |= SEC_RELOC; s->owner->flags |= HAS_RELOC; s->reloc_count++; - if (r->relent.sym_ptr_ptr == 0) - { - r->relent.sym_ptr_ptr = section->symbol_ptr_ptr; - } + if (r->relent.sym_ptr_ptr == NULL && section != NULL) + r->relent.sym_ptr_ptr = section->symbol_ptr_ptr; if (this_byte (&(ieee->h)) == (int) ieee_comma) { @@ -1987,8 +1985,9 @@ ieee_canonicalize_reloc (abfd, section, relptr, symbols) symbols + src->symbol.index + ieee->external_reference_base_offset; break; case 0: - src->relent.sym_ptr_ptr = - src->relent.sym_ptr_ptr[0]->section->symbol_ptr_ptr; + if (src->relent.sym_ptr_ptr != NULL) + src->relent.sym_ptr_ptr = + src->relent.sym_ptr_ptr[0]->section->symbol_ptr_ptr; break; default: @@ -3642,9 +3641,11 @@ ieee_generic_stat_arch_elt (abfd, buf) bfd *abfd; struct stat *buf; { - ieee_ar_data_type *ar = abfd->my_archive->tdata.ieee_ar_data; + ieee_ar_data_type *ar = (ieee_ar_data_type *) NULL; ieee_data_type *ieee; + if (abfd->my_archive != NULL) + ar = abfd->my_archive->tdata.ieee_ar_data; if (ar == (ieee_ar_data_type *) NULL) { bfd_set_error (bfd_error_invalid_operation); |