aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog2
-rw-r--r--bfd/aoutx.h5
2 files changed, 6 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ea5ece5..f8c3343 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,7 @@
2007-08-01 Michael Snyder <msnyder@access-company.com>
+ * aoutx.h (aout_link_add_symbols): Return if count is zero.
+
* elf.c (bfd_elf_print_symbol): Macro dereferences pointer, so
pointer must be non-null.
diff --git a/bfd/aoutx.h b/bfd/aoutx.h
index 78b0594..1244510 100644
--- a/bfd/aoutx.h
+++ b/bfd/aoutx.h
@@ -2959,13 +2959,16 @@ aout_link_add_symbols (bfd *abfd, struct bfd_link_info *info)
return FALSE;
}
+ if (sym_count == 0)
+ return TRUE; /* Nothing to do. */
+
/* We keep a list of the linker hash table entries that correspond
to particular symbols. We could just look them up in the hash
table, but keeping the list is more efficient. Perhaps this
should be conditional on info->keep_memory. */
amt = sym_count * sizeof (struct aout_link_hash_entry *);
sym_hash = bfd_alloc (abfd, amt);
- if (sym_hash == NULL && sym_count != 0)
+ if (sym_hash == NULL)
return FALSE;
obj_aout_sym_hashes (abfd) = sym_hash;