aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2008-03-04 20:05:27 +0000
committerJoel Brobecker <brobecker@gnat.com>2008-03-04 20:05:27 +0000
commit24b984aeed4292d02d3233d921fb37a8cf60ab55 (patch)
tree046138f27cf9f553d3b2de11f5bac2fb8300cb9f
parentacf19f081c311d3cf57be1b3b561c5922c101f27 (diff)
downloadgdb-24b984aeed4292d02d3233d921fb37a8cf60ab55.zip
gdb-24b984aeed4292d02d3233d921fb37a8cf60ab55.tar.gz
gdb-24b984aeed4292d02d3233d921fb37a8cf60ab55.tar.bz2
* frame.c (reinit_frame_cache): Only annotate if frames were
previously valid.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/frame.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 12550ef..d786a7e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-04 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * frame.c (reinit_frame_cache): Only annotate if frames were
+ previously valid.
+
2008-03-04 Greg Law <glaw@undo-software.com>
* regcache.c (registers_changed): Call reinit_frame_cache.
diff --git a/gdb/frame.c b/gdb/frame.c
index d487e84..ded9ae7 100644
--- a/gdb/frame.c
+++ b/gdb/frame.c
@@ -1079,9 +1079,11 @@ reinit_frame_cache (void)
obstack_free (&frame_cache_obstack, 0);
obstack_init (&frame_cache_obstack);
+ if (current_frame != NULL)
+ annotate_frames_invalid ();
+
current_frame = NULL; /* Invalidate cache */
select_frame (NULL);
- annotate_frames_invalid ();
if (frame_debug)
fprintf_unfiltered (gdb_stdlog, "{ reinit_frame_cache () }\n");
}