This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: frame.c assertion failure


On May 8, 10:05am, Andrew Cagney wrote:

> Don't forget a comment :-)
[...]
> > Okay?
> 
> yup.

It's in.  This is what I committed...

	* frame.c (get_frame_type): Don't attempt to lazily initialize
	frame's unwinder for legacy frames.

Index: frame.c
===================================================================
RCS file: /cvs/src/src/gdb/frame.c,v
retrieving revision 1.111
diff -u -p -r1.111 frame.c
--- frame.c	5 May 2003 18:33:10 -0000	1.111
+++ frame.c	8 May 2003 15:32:59 -0000
@@ -2069,7 +2069,12 @@ get_frame_type (struct frame_info *frame
   if (!DEPRECATED_USE_GENERIC_DUMMY_FRAMES
       && deprecated_frame_in_dummy (frame))
     return DUMMY_FRAME;
-  if (frame->unwind == NULL)
+
+  /* Some legacy code, e.g, mips_init_extra_frame_info() wants
+     to determine the frame's type prior to it being completely
+     initialized.  Don't attempt to lazily initialize ->unwind for
+     legacy code.  It will be initialized in legacy_get_prev_frame().  */
+  if (frame->unwind == NULL && !legacy_frame_p (current_gdbarch))
     {
       /* Initialize the frame's unwinder because it is that which
          provides the frame's type.  */


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]