aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2002-09-19 15:38:36 +0000
committerNick Clifton <nickc@redhat.com>2002-09-19 15:38:36 +0000
commit0e327d91faf4950ff0b7f5dd989991aef0538e3a (patch)
tree9b97189a2d2c1ddeeea553bc00ae44fc93a3f9d0
parent1c59ba3fd558b0e72d1cbe848115b6ef1ba6ea13 (diff)
downloadgdb-0e327d91faf4950ff0b7f5dd989991aef0538e3a.zip
gdb-0e327d91faf4950ff0b7f5dd989991aef0538e3a.tar.gz
gdb-0e327d91faf4950ff0b7f5dd989991aef0538e3a.tar.bz2
Fix error reading ECOFF information: 'ioptMax' refers to the actual *size*
of the optimization symtab, not the number of entries.
-rw-r--r--bfd/ChangeLog3
-rw-r--r--bfd/ecoff.c4
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 64b9bcc..233e519 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -4,6 +4,9 @@
correctly sign-extend 32-bit ECOFF null values (0xffffffff, -1)
on 64 bit machines.
(ecoff_swap_sym_in) <iss>: Likewise.
+ * ecoff.c (_bfd_ecoff_slurp_symbolic_info): Fix error reading
+ ECOFF information: 'ioptMax' refers to the actual *size*
+ of the optimization symtab, not the number of entries.
2002-09-19 Daniel Jacobowitz <drow@mvista.com>
diff --git a/bfd/ecoff.c b/bfd/ecoff.c
index f37ea56..47b6582 100644
--- a/bfd/ecoff.c
+++ b/bfd/ecoff.c
@@ -553,7 +553,9 @@ _bfd_ecoff_slurp_symbolic_info (abfd, ignore, debug)
UPDATE_RAW_END (cbDnOffset, idnMax, backend->debug_swap.external_dnr_size);
UPDATE_RAW_END (cbPdOffset, ipdMax, backend->debug_swap.external_pdr_size);
UPDATE_RAW_END (cbSymOffset, isymMax, backend->debug_swap.external_sym_size);
- UPDATE_RAW_END (cbOptOffset, ioptMax, backend->debug_swap.external_opt_size);
+ /* eraxxon@alumni.rice.edu: ioptMax refers to the size of the
+ optimization symtab, not the number of entries */
+ UPDATE_RAW_END (cbOptOffset, ioptMax, sizeof (char));
UPDATE_RAW_END (cbAuxOffset, iauxMax, sizeof (union aux_ext));
UPDATE_RAW_END (cbSsOffset, issMax, sizeof (char));
UPDATE_RAW_END (cbSsExtOffset, issExtMax, sizeof (char));