aboutsummaryrefslogtreecommitdiff
path: root/gdb/stack.c
diff options
context:
space:
mode:
authorDaniel Jacobowitz <drow@false.org>2008-07-15 18:58:32 +0000
committerDaniel Jacobowitz <drow@false.org>2008-07-15 18:58:32 +0000
commit54af988d1e631ef9f44c83cc23cbc33bdcf12cf5 (patch)
treeb67c0b548851cb0185d7ce778de4bcfb412f6019 /gdb/stack.c
parentba2c6aec01a024592f7dce65f0628a93e39f4abe (diff)
downloadfsf-binutils-gdb-54af988d1e631ef9f44c83cc23cbc33bdcf12cf5.zip
fsf-binutils-gdb-54af988d1e631ef9f44c83cc23cbc33bdcf12cf5.tar.gz
fsf-binutils-gdb-54af988d1e631ef9f44c83cc23cbc33bdcf12cf5.tar.bz2
* frame.c (frame_unwind_id): Renamed to ...
(frame_unwind_caller_id): ... this. All callers updated. (frame_pc_unwind): Renamed to ... (frame_unwind_caller_pc): ... this. All callers updated. * frame.h: Document frame_unwind_caller_WHAT functions. (frame_unwind_id): Renamed to ... (frame_unwind_caller_id): ... this. (frame_pc_unwind): Renamed to ... (frame_unwind_caller_pc): ... this. * hppa-tdep.c (hppa_find_unwind_entry_in_block): Correct comment. * stack.c (parse_frame_specification_1): Do not rely on frame_unwind_id.
Diffstat (limited to 'gdb/stack.c')
-rw-r--r--gdb/stack.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/gdb/stack.c b/gdb/stack.c
index 18c4298..7465fbf 100644
--- a/gdb/stack.c
+++ b/gdb/stack.c
@@ -855,8 +855,16 @@ parse_frame_specification_1 (const char *frame_exp, const char *message,
{
if (frame_id_eq (id, get_frame_id (fid)))
{
- while (frame_id_eq (id, frame_unwind_id (fid)))
- fid = get_prev_frame (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;
+ }
return fid;
}
}
@@ -985,7 +993,7 @@ frame_info (char *addr_exp, int from_tty)
puts_filtered ("; ");
wrap_here (" ");
printf_filtered ("saved %s ", pc_regname);
- fputs_filtered (paddress (frame_pc_unwind (fi)), gdb_stdout);
+ fputs_filtered (paddress (frame_unwind_caller_pc (fi)), gdb_stdout);
printf_filtered ("\n");
if (calling_frame_info == NULL)