Permit symbols to be superseded when new symbol files have

been read in, particularly for VxWorks.

        * symfile.c (symbol_file_add):  Use filtered printing and wrap it.
        If we have wiped out any old symbol tables, clean up at end of
        symbol reading.
        (symbol_file_command):  Don't reference symfile_fns if it's zero.
This commit is contained in:
John Gilmore 1991-04-13 22:37:48 +00:00
parent d219db0133
commit 0ef6f0192d

View File

@ -413,7 +413,8 @@ symbol_file_add (name, from_tty, addr, mainline)
if (from_tty) if (from_tty)
{ {
printf ("Reading symbol data from %s...", name); printf_filtered ("Reading symbol data from %s...", name);
wrap_here ("");
fflush (stdout); fflush (stdout);
} }
@ -457,9 +458,12 @@ symbol_file_add (name, from_tty, addr, mainline)
symfile_fns = sf; symfile_fns = sf;
} }
/* If we have wiped out any old symbol tables, clean up. */
clear_symtab_users_once ();
if (from_tty) if (from_tty)
{ {
printf ("done.\n"); printf_filtered ("done.\n");
fflush (stdout); fflush (stdout);
} }
} }
@ -489,9 +493,11 @@ symbol_file_command (name, from_tty)
/* FIXME, this does not account for the main file and subsequent /* FIXME, this does not account for the main file and subsequent
files (shared libs, dynloads, etc) having different formats. files (shared libs, dynloads, etc) having different formats.
It only calls the cleanup routine for the main file's format. */ It only calls the cleanup routine for the main file's format. */
(*symfile_fns->sym_new_init) (); if (symfile_fns) {
free (symfile_fns); (*symfile_fns->sym_new_init) ();
symfile_fns = 0; free (symfile_fns);
symfile_fns = 0;
}
return; return;
} }