diff options
author | John Gilmore <gnu@cygnus> | 1991-05-02 03:39:15 +0000 |
---|---|---|
committer | John Gilmore <gnu@cygnus> | 1991-05-02 03:39:15 +0000 |
commit | 639893384d5faeaa671f98dfc3ed169e9aa2ccc9 (patch) | |
tree | 40f7a4988d62134fc87b4150350a47248d3169a2 /gdb/dbxread.c | |
parent | e77463a15c9c8cdb06a47cf3f84bac76eddd1f25 (diff) | |
download | gdb-639893384d5faeaa671f98dfc3ed169e9aa2ccc9.zip gdb-639893384d5faeaa671f98dfc3ed169e9aa2ccc9.tar.gz gdb-639893384d5faeaa671f98dfc3ed169e9aa2ccc9.tar.bz2 |
Merge devo/bfd with GDB's bfd.
Get getopt and obstack from -liberty rather than compiling them here.
* coffread.c: turn a printf into a complain(), and try to deal more
gracefully with botched-looking lineno pointers.
* dbxread.c: Use bfd_get_symcount rather than bfd_get_symcount_upper_bound.
Don't coredump on files with zero symbols in them (a BFD bug showed this one).
* environ.c: Pass GNUTARGET into the parent (gdb) as well as the child.
Diffstat (limited to 'gdb/dbxread.c')
-rw-r--r-- | gdb/dbxread.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gdb/dbxread.c b/gdb/dbxread.c index 1760656..5abe56e 100644 --- a/gdb/dbxread.c +++ b/gdb/dbxread.c @@ -1404,7 +1404,7 @@ dbx_symfile_init (sf) info->text_sect = bfd_get_section_by_name (sym_bfd, ".text"); if (!info->text_sect) abort(); - info->symcount = bfd_get_symcount_upper_bound(sym_bfd); /* It's exact for a.out */ + info->symcount = bfd_get_symcount (sym_bfd); /* Read the string table size and check it for bogosity. */ val = lseek (desc, STRING_TABLE_OFFSET, L_SET); @@ -2334,7 +2334,8 @@ read_dbx_symtab (symfile_name, addr, } /* If there's stuff to be cleaned up, clean it up. */ - if (entry_point < bufp->n_value + if (nlistlen > 0 /* We have some syms */ + && entry_point < bufp->n_value && entry_point >= last_o_file_start) { startup_file_start = last_o_file_start; |