summaryrefslogtreecommitdiff
path: root/gdb/inf-loop.c
diff options
context:
space:
mode:
authorPedro Alves <pedro@codesourcery.com>2008-11-04 20:52:22 +0000
committerPedro Alves <pedro@codesourcery.com>2008-11-04 20:52:22 +0000
commitd1d203e291e074141bd005494ff3914847ab9633 (patch)
treef878a1893de36512400308a656eb93fa5d3c3702 /gdb/inf-loop.c
parent8097dfdc83d8f6571913bb1defc63399f94a976e (diff)
downloadgdb-d1d203e291e074141bd005494ff3914847ab9633.tar.gz
* inf-loop.c (inferior_event_handler): On INF_ERROR and
INF_REG_EVENT throwing, don't call target_async or pop_target. Call pop_all_targets_above. * remote.c (remote_close): Call remote_terminal_ours. Don't call signal or target_async.
Diffstat (limited to 'gdb/inf-loop.c')
-rw-r--r--gdb/inf-loop.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gdb/inf-loop.c b/gdb/inf-loop.c
index 8c2c282e18b..2e0f4d26770 100644
--- a/gdb/inf-loop.c
+++ b/gdb/inf-loop.c
@@ -50,8 +50,7 @@ inferior_event_handler (enum inferior_event_type event_type,
{
case INF_ERROR:
printf_unfiltered (_("error detected from target.\n"));
- target_async (NULL, 0);
- pop_target ();
+ pop_all_targets_above (file_stratum, 0);
discard_all_intermediate_continuations ();
discard_all_continuations ();
async_enable_stdin ();
@@ -65,8 +64,7 @@ inferior_event_handler (enum inferior_event_type event_type,
if (!catch_errors (fetch_inferior_event_wrapper,
client_data, "", RETURN_MASK_ALL))
{
- target_async (NULL, 0);
- pop_target ();
+ pop_all_targets_above (file_stratum, 0);
discard_all_intermediate_continuations ();
discard_all_continuations ();
async_enable_stdin ();