From: Jim Kingdon Date: Thu, 29 Jul 1993 19:19:30 +0000 (+0000) Subject: * paread.c (pa_symfile_init): If error reading string table, don't X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=93af329a003e753a45d48d7ce571409f6fdc7713;p=binutils-gdb.git * paread.c (pa_symfile_init): If error reading string table, don't use errno in cases where it hasn't been set. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 01e10e9741e..42c41306a6f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,8 @@ Thu Jul 29 12:09:46 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + * paread.c (pa_symfile_init): If error reading string table, don't + use errno in cases where it hasn't been set. + * ser-unix.c (gdb_setpgid): Pass our pid, not 0, to setpgid. * remote-monitor.c (_initialize_monitor): Comment out use of diff --git a/gdb/paread.c b/gdb/paread.c index 46a6e3d2537..150757effb1 100644 --- a/gdb/paread.c +++ b/gdb/paread.c @@ -399,8 +399,14 @@ pa_symfile_init (objfile) perror_with_name (name); val = bfd_read (DBX_STRINGTAB (objfile), DBX_STRINGTAB_SIZE (objfile), 1, sym_bfd); - if (val != DBX_STRINGTAB_SIZE (objfile)) + if (val == 0) + error ("End of file reading string table"); + else if (val < 0) + /* It's possible bfd_read should be setting bfd_error, and we should be + checking that. But currently it doesn't set bfd_error. */ perror_with_name (name); + else if (val != DBX_STRINGTAB_SIZE (objfile)) + error ("Short read reading string table"); } /* PA specific parsing routine for section offsets.