aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1991-04-06 02:11:43 +0000
committerJohn Gilmore <gnu@cygnus>1991-04-06 02:11:43 +0000
commit66eeea27ccfd428e3813dda55dc3497cb5147532 (patch)
tree4756ff48652a691ad0f53729a9ebdb041e097187
parentbe2c3f354cf23ebf052e38a615f5471d7b95d867 (diff)
downloadgdb-66eeea27ccfd428e3813dda55dc3497cb5147532.zip
gdb-66eeea27ccfd428e3813dda55dc3497cb5147532.tar.gz
gdb-66eeea27ccfd428e3813dda55dc3497cb5147532.tar.bz2
*** empty log message ***
-rw-r--r--gdb/dbxread.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index 4a6a540..777baf8 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -1281,9 +1281,12 @@ dbx_symfile_read (sf, addr, mainline)
if (mainline) {
symfile_string_table = info->stringtab;
symfile_string_table_size = info->stringtab_size;
- init_psymbol_list (info->symcount);
}
+ /* If we are reinitializing, or if we have never loaded syms yet, init */
+ if (mainline || global_psymbols.size == 0 || static_psymbols.size == 0)
+ init_psymbol_list (info->symcount);
+
symfile_bfd = sym_bfd; /* Kludge for SWAP_SYMBOL */
pending_blocks = 0;
@@ -2618,7 +2621,7 @@ dbx_psymtab_to_symtab (pst)
/* We keep the string table for symfile resident in memory, but
not the string table for any other symbol files. */
- if (0 != strcmp(pst->symfile_name, symfile))
+ if ((symfile == 0) || 0 != strcmp(pst->symfile_name, symfile))
{
/* Read in the string table */