mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-24 02:24:46 +08:00
frame: do not assume unwinding will succeed
In get_frame_unwind_stop_reason, remove the assumption that further frame unwinding will succeed. gdb/ 2013-02-11 Jan Kratochvil <jan.kratochvil@redhat.com> * frame.c (get_frame_unwind_stop_reason): Unconditionally call get_prev_frame_1.
This commit is contained in:
parent
32261e5234
commit
824344ca4f
@ -1,3 +1,8 @@
|
||||
2014-01-16 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* frame.c (get_frame_unwind_stop_reason): Unconditionally call
|
||||
get_prev_frame_1.
|
||||
|
||||
2014-01-16 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
* dwarf2-frame.c (dwarf2_frame_cfa): Move UNWIND_UNAVAILABLE check
|
||||
|
@ -2522,13 +2522,10 @@ get_frame_sp (struct frame_info *this_frame)
|
||||
enum unwind_stop_reason
|
||||
get_frame_unwind_stop_reason (struct frame_info *frame)
|
||||
{
|
||||
/* If we haven't tried to unwind past this point yet, then assume
|
||||
that unwinding would succeed. */
|
||||
if (frame->prev_p == 0)
|
||||
return UNWIND_NO_REASON;
|
||||
/* Fill-in STOP_REASON. */
|
||||
get_prev_frame_1 (frame);
|
||||
gdb_assert (frame->prev_p);
|
||||
|
||||
/* Otherwise, we set a reason when we succeeded (or failed) to
|
||||
unwind. */
|
||||
return frame->stop_reason;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user