From 90a7abbca34a2c0b8500bcde40489a2981e62dca Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Sat, 18 Nov 1995 23:04:26 +0000 Subject: [PATCH] * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return. (_bfd_coff_read_string_table): Likewise. --- bfd/ChangeLog | 5 +++++ bfd/coffgen.c | 13 +++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 5c55b957ed..260117a58a 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,8 @@ +Sat Nov 18 18:01:41 1995 Ian Lance Taylor + + * coffgen.c (_bfd_coff_get_external_symbols): Cast malloc return. + (_bfd_coff_read_string_table): Likewise. + Sat Nov 18 19:43:04 1995 Richard Earnshaw (rearnsha@armltd.co.uk) * pe-arm.c: Fix typos. diff --git a/bfd/coffgen.c b/bfd/coffgen.c index 9ccd2b7e80..4bce970a83 100644 --- a/bfd/coffgen.c +++ b/bfd/coffgen.c @@ -1481,7 +1481,7 @@ _bfd_coff_get_external_symbols (abfd) size = obj_raw_syment_count (abfd) * symesz; - syms = malloc (size); + syms = (PTR) malloc (size); if (syms == NULL && size != 0) { bfd_set_error (bfd_error_no_memory); @@ -1539,7 +1539,16 @@ _bfd_coff_read_string_table (abfd) #endif } - strings = malloc (strsize); + if (strsize < STRING_SIZE_SIZE) + { + (*_bfd_error_handler) + ("%s: bad string table size %lu", bfd_get_filename (abfd), + (unsigned long) strsize); + bfd_set_error (bfd_error_bad_value); + return NULL; + } + + strings = (char *) malloc (strsize); if (strings == NULL) { bfd_set_error (bfd_error_no_memory);