aboutsummaryrefslogtreecommitdiff
path: root/gdb/stack.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/stack.c')
-rw-r--r--gdb/stack.c14
1 files changed, 3 insertions, 11 deletions
diff --git a/gdb/stack.c b/gdb/stack.c
index 7465fbf..18c4298 100644
--- a/gdb/stack.c
+++ b/gdb/stack.c
@@ -855,16 +855,8 @@ parse_frame_specification_1 (const char *frame_exp, const char *message,
{
if (frame_id_eq (id, get_frame_id (fid)))
{
- struct frame_info *prev_frame;
-
- while (1)
- {
- prev_frame = get_prev_frame (fid);
- if (!prev_frame
- || !frame_id_eq (id, get_frame_id (prev_frame)))
- break;
- fid = prev_frame;
- }
+ while (frame_id_eq (id, frame_unwind_id (fid)))
+ fid = get_prev_frame (fid);
return fid;
}
}
@@ -993,7 +985,7 @@ frame_info (char *addr_exp, int from_tty)
puts_filtered ("; ");
wrap_here (" ");
printf_filtered ("saved %s ", pc_regname);
- fputs_filtered (paddress (frame_unwind_caller_pc (fi)), gdb_stdout);
+ fputs_filtered (paddress (frame_pc_unwind (fi)), gdb_stdout);
printf_filtered ("\n");
if (calling_frame_info == NULL)