diff options
Diffstat (limited to 'bfd/reloc16.c')
-rw-r--r-- | bfd/reloc16.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/bfd/reloc16.c b/bfd/reloc16.c index 720e2d6..4e80953 100644 --- a/bfd/reloc16.c +++ b/bfd/reloc16.c @@ -1,6 +1,6 @@ /* 8 and 16 bit COFF relocation functions, for BFD. Copyright 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2001, - 2002, 2003 Free Software Foundation, Inc. + 2002, 2003, 2004 Free Software Foundation, Inc. Written by Cygnus Support. This file is part of BFD, the Binary File Descriptor library. @@ -230,7 +230,7 @@ bfd_coff_reloc16_relax_section (abfd, input_section, link_info, again) free ((char *) shrinks); } - input_section->_cooked_size -= shrink; + input_section->size -= shrink; free ((char *) reloc_vector); return TRUE; } @@ -255,6 +255,7 @@ bfd_coff_reloc16_get_relocated_section_contents (in_abfd, long reloc_size = bfd_get_reloc_upper_bound (input_bfd, input_section); arelent **reloc_vector; long reloc_count; + bfd_size_type sz; if (reloc_size < 0) return NULL; @@ -267,11 +268,8 @@ bfd_coff_reloc16_get_relocated_section_contents (in_abfd, symbols); /* Read in the section. */ - if (!bfd_get_section_contents (input_bfd, - input_section, - data, - (bfd_vma) 0, - input_section->_raw_size)) + sz = input_section->rawsize ? input_section->rawsize : input_section->size; + if (!bfd_get_section_contents (input_bfd, input_section, data, 0, sz)) return NULL; reloc_vector = (arelent **) bfd_malloc ((bfd_size_type) reloc_size); |