aboutsummaryrefslogtreecommitdiff
path: root/gdb/dummy-frame.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/dummy-frame.c')
-rw-r--r--gdb/dummy-frame.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/dummy-frame.c b/gdb/dummy-frame.c
index ceaa1b0..d6a7241 100644
--- a/gdb/dummy-frame.c
+++ b/gdb/dummy-frame.c
@@ -69,6 +69,7 @@ int
deprecated_pc_in_call_dummy (struct gdbarch *gdbarch, CORE_ADDR pc)
{
struct dummy_frame *dummyframe;
+
for (dummyframe = dummy_frame_stack;
dummyframe != NULL;
dummyframe = dummyframe->next)
@@ -217,6 +218,7 @@ dummy_frame_sniffer (const struct frame_unwind *self,
if (frame_id_eq (dummyframe->id, this_id))
{
struct dummy_frame_cache *cache;
+
cache = FRAME_OBSTACK_ZALLOC (struct dummy_frame_cache);
cache->prev_regcache = get_inferior_thread_state_regcache (dummyframe->caller_state);
cache->this_id = this_id;
@@ -267,6 +269,7 @@ dummy_frame_this_id (struct frame_info *this_frame,
{
/* The dummy-frame sniffer always fills in the cache. */
struct dummy_frame_cache *cache = (*this_prologue_cache);
+
gdb_assert (cache != NULL);
(*this_id) = cache->this_id;
}
@@ -288,6 +291,7 @@ static void
fprint_dummy_frames (struct ui_file *file)
{
struct dummy_frame *s;
+
for (s = dummy_frame_stack; s != NULL; s = s->next)
{
gdb_print_host_address (s, file);
@@ -307,6 +311,7 @@ maintenance_print_dummy_frames (char *args, int from_tty)
{
struct cleanup *cleanups;
struct ui_file *file = gdb_fopen (args, "w");
+
if (file == NULL)
perror_with_name (_("maintenance print dummy-frames"));
cleanups = make_cleanup_ui_file_delete (file);