* infcmd.c (finish_command_continuation): Wrap print_return_value
in TRY_CATCH.
This commit is contained in:
parent
b115cf96d3
commit
40c549d600
@ -1,3 +1,8 @@
|
||||
2010-03-18 Tom Tromey <tromey@redhat.com>
|
||||
|
||||
* infcmd.c (finish_command_continuation): Wrap print_return_value
|
||||
in TRY_CATCH.
|
||||
|
||||
2010-03-18 Ulrich Weigand <uweigand@de.ibm.com>
|
||||
|
||||
* mi/mi-main.c (mi_cmd_list_thread_groups): Use get_current_arch
|
||||
|
14
gdb/infcmd.c
14
gdb/infcmd.c
@ -1439,7 +1439,19 @@ finish_command_continuation (void *arg)
|
||||
_("finish_command: function has no target type"));
|
||||
|
||||
if (TYPE_CODE (value_type) != TYPE_CODE_VOID)
|
||||
print_return_value (SYMBOL_TYPE (a->function), value_type);
|
||||
{
|
||||
volatile struct gdb_exception ex;
|
||||
|
||||
TRY_CATCH (ex, RETURN_MASK_ALL)
|
||||
{
|
||||
/* print_return_value can throw an exception in some
|
||||
circumstances. We need to catch this so that we still
|
||||
delete the breakpoint. */
|
||||
print_return_value (SYMBOL_TYPE (a->function), value_type);
|
||||
}
|
||||
if (ex.reason < 0)
|
||||
exception_print (gdb_stdout, ex);
|
||||
}
|
||||
}
|
||||
|
||||
/* We suppress normal call of normal_stop observer and do it here so
|
||||
|
Loading…
x
Reference in New Issue
Block a user