aboutsummaryrefslogtreecommitdiff
path: root/gdb/frame-unwind.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/frame-unwind.c')
-rw-r--r--gdb/frame-unwind.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb/frame-unwind.c b/gdb/frame-unwind.c
index 66a28ae..e6e6353 100644
--- a/gdb/frame-unwind.c
+++ b/gdb/frame-unwind.c
@@ -110,13 +110,14 @@ frame_unwind_try_unwinder (struct frame_info *this_frame, void **this_cache,
/* Catch all exceptions, caused by either interrupt or error.
Reset *THIS_CACHE. */
*this_cache = NULL;
+ frame_cleanup_after_sniffer (this_frame);
+
if (ex.error == NOT_AVAILABLE_ERROR)
{
/* This usually means that not even the PC is available,
thus most unwinders aren't able to determine if they're
the best fit. Keep trying. Fallback prologue unwinders
should always accept the frame. */
- frame_cleanup_after_sniffer (this_frame);
return 0;
}
throw_exception (ex);