aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ieee.c2
-rw-r--r--bfd/oasys.c3
-rw-r--r--bfd/targets.c4
3 files changed, 5 insertions, 4 deletions
diff --git a/bfd/ieee.c b/bfd/ieee.c
index f69adbd..8a2f86d 100644
--- a/bfd/ieee.c
+++ b/bfd/ieee.c
@@ -1864,7 +1864,7 @@ bfd_target ieee_vec =
(HAS_RELOC | EXEC_P | /* object flags */
HAS_LINENO | HAS_DEBUG |
HAS_SYMS | HAS_LOCALS | DYNAMIC | WP_TEXT | D_PAGED),
- (SEC_CODE|SEC_DATA|SEC_ROM
+ (SEC_CODE|SEC_DATA|SEC_ROM|SEC_HAS_CONTENTS
|SEC_ALLOC | SEC_LOAD | SEC_RELOC), /* section flags */
0, /* valid reloc types */
' ', /* ar_pad_char */
diff --git a/bfd/oasys.c b/bfd/oasys.c
index c68ce07..995d962 100644
--- a/bfd/oasys.c
+++ b/bfd/oasys.c
@@ -293,7 +293,8 @@ bfd *abfd;
while (loop) {
oasys_record_union_type record;
oasys_read_record(abfd, &record);
-
+ if (record.header.length < sizeof(record.header))
+ return (bfd_target *)NULL;
switch ((oasys_record_enum_type)(record.header.type)) {
case oasys_record_is_header_enum:
diff --git a/bfd/targets.c b/bfd/targets.c
index d087f45..252cbe7 100644
--- a/bfd/targets.c
+++ b/bfd/targets.c
@@ -40,7 +40,7 @@ extern bfd_target m88k_bcs_vec;
bfd_target *target_vector[] =
{
#ifndef INTEL960VERSION
- &srec_vec,
+
#endif /* INTEL960VERSION */
&ieee_vec,
@@ -51,6 +51,6 @@ bfd_target *target_vector[] =
&m88k_bcs_vec,
&b_out_vec_big_host,
&b_out_vec_little_host,
-
+ &srec_vec,
NULL
};