diff options
-rw-r--r-- | bfd/ChangeLog | 5 | ||||
-rw-r--r-- | bfd/linker.c | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 8895828..166ca49 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +2001-08-24 Thiemo Seufer <seufer@csv.ica.uni-stuttgart.de> + + * linker.c (_bfd_generic_link_add_archive_symbols): Replace alloca() + by bfd_malloc(). + 2001-08-23 Andreas Jaeger <aj@suse.de> * elf64-x86-64.c (elf64_x86_64_check_relocs): Set DF_TEXTREL if diff --git a/bfd/linker.c b/bfd/linker.c index 00389ac..89b9526 100644 --- a/bfd/linker.c +++ b/bfd/linker.c @@ -1007,9 +1007,13 @@ _bfd_generic_link_add_archive_symbols (abfd, info, checkfn) let's look for its import thunk */ if (info->pei386_auto_import) { - char *buf = alloca (strlen (h->root.string) + 10); + char *buf = (char *) bfd_malloc (strlen (h->root.string) + 10); + if (buf == NULL) + return false; + sprintf (buf, "__imp_%s", h->root.string); arh = archive_hash_lookup (&arsym_hash, buf, false, false); + free(buf); } if (arh == (struct archive_hash_entry *) NULL) { |