aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Buettner <kevinb@redhat.com>2003-05-08 15:34:12 +0000
committerKevin Buettner <kevinb@redhat.com>2003-05-08 15:34:12 +0000
commit710ee10a2725a865d30a006ad4dd5fc31b92cb23 (patch)
tree32c073892ee03c7ea77ddb5d09bd3e8ebf401e91
parent6a32c71069679a1b8cd3e38e80390133151e03f7 (diff)
downloadgdb-710ee10a2725a865d30a006ad4dd5fc31b92cb23.zip
gdb-710ee10a2725a865d30a006ad4dd5fc31b92cb23.tar.gz
gdb-710ee10a2725a865d30a006ad4dd5fc31b92cb23.tar.bz2
* frame.c (get_frame_type): Don't attempt to lazily initialize
frame's unwinder for legacy frames.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/frame.c7
2 files changed, 11 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 5d3e1ff..00cfdae 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2003-05-08 Kevin Buettner <kevinb@redhat.com>
+
+ * frame.c (get_frame_type): Don't attempt to lazily initialize
+ frame's unwinder for legacy frames.
+
2003-05-07 Andrew Cagney <cagney@redhat.com>
* ia64-tdep.c (ia64_remote_translate_xfer_address): Add "gdbarch"
diff --git a/gdb/frame.c b/gdb/frame.c
index b881a74..d007c3f 100644
--- a/gdb/frame.c
+++ b/gdb/frame.c
@@ -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. */