aboutsummaryrefslogtreecommitdiff
path: root/gdb/coffread.c
diff options
context:
space:
mode:
authorJohn Gilmore <gnu@cygnus>1991-09-11 01:49:50 +0000
committerJohn Gilmore <gnu@cygnus>1991-09-11 01:49:50 +0000
commitcadbb07a69baa48a153c0c4c148d24342ce4474f (patch)
tree7e2762cc1ddd1619c453c8b658dc961383b63531 /gdb/coffread.c
parentb1815762f9f0a4579e4da7b7b1b5427be3c35c93 (diff)
downloadgdb-cadbb07a69baa48a153c0c4c148d24342ce4474f.zip
gdb-cadbb07a69baa48a153c0c4c148d24342ce4474f.tar.gz
gdb-cadbb07a69baa48a153c0c4c148d24342ce4474f.tar.bz2
* core.c (core_file_command): Print frame at coredump with
its level number, by calling print_stack_frame. * frame.h: Add selected_frame_level, print_stack_frame. * frame.h, stack.c: Remove print_sel_frame, print_selected_frame. * convex-tdep.c, convex-xdep.c, infcmd.c, inflow.c, infrun.c: Change print_sel_frame and print_selected_frame callers to print_stack_frame. * dbxread.c (read_ofile_symtab): Avoid empty else clause. * symfile.c (free_named_symtabs): Ditto. * main.c (main): wrap_here needs an arg. * solib.c (find_solib): Avoid memory access if _DYNAMIC is zero. (solib_add): Avoid noise. (solib_create_inferior_hook): Lint. (sharedlibrary_command): Move dont_repeat to here. * utils.c (error): Call wrap_here to force buffered output. Small patches from Peter Schauer: * coffread.c (start_symtab): Free any existing line_vector before malloc-ing new one. (read_coff_symtab): Ditto for type_vector. * source.c (lines_to_list): New variable, replacing function. (all uses): Use as variable. (_initialize_source): Add 'set listsize' and 'show listsize'. * utils.c (lines_to_list): Remove function. * stack.c (print_frame_info): Use as variable. * defs.h (lines_to_list): Remove declaration.
Diffstat (limited to 'gdb/coffread.c')
-rw-r--r--gdb/coffread.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/gdb/coffread.c b/gdb/coffread.c
index c695056..33e014d 100644
--- a/gdb/coffread.c
+++ b/gdb/coffread.c
@@ -439,8 +439,10 @@ start_symtab ()
#endif
#endif
- /* Initialize the source file information for this file. */
+ /* Initialize the source file line number information for this file. */
+ if (line_vector) /* Unlikely, but maybe possible? */
+ free (line_vector);
line_vector_index = 0;
line_vector_length = 1000;
prev_line_number = -2; /* Force first line number to be explicit */
@@ -831,6 +833,8 @@ read_coff_symtab (desc, nsyms)
last_source_file = 0;
bzero (opaque_type_chain, sizeof opaque_type_chain);
+ if (type_vector) /* Get rid of previous one */
+ free (type_vector);
type_vector_length = 160;
type_vector = (struct typevector *)
xmalloc (sizeof (struct typevector)
@@ -1697,7 +1701,7 @@ decode_type (cs, c_type, aux)
/* Reference to existing type */
if (cs->c_nsyms > 1 && aux->x_sym.x_tagndx.l != 0)
{
- type = coff_alloc_type (aux->x_sym.x_tagndx);
+ type = coff_alloc_type (aux->x_sym.x_tagndx.l);
return type;
}