aboutsummaryrefslogtreecommitdiff
path: root/gdb/infcall.c
diff options
context:
space:
mode:
authorVladimir Prus <vladimir@codesourcery.com>2008-06-13 20:19:19 +0000
committerVladimir Prus <vladimir@codesourcery.com>2008-06-13 20:19:19 +0000
commit8f6a8e8417fa1e8191993f4869628460605e6221 (patch)
tree3e380f8cf21b6666371b7e76d15eb8e93f73de04 /gdb/infcall.c
parentfa452fa6833cbb3088361ac35f4c51716afde520 (diff)
downloadgdb-8f6a8e8417fa1e8191993f4869628460605e6221.zip
gdb-8f6a8e8417fa1e8191993f4869628460605e6221.tar.gz
gdb-8f6a8e8417fa1e8191993f4869628460605e6221.tar.bz2
Don't suppress *running when doing finish.
* infcall.c (call_function_by_hand): Set both suppress_resume_observer and suppress_stop_observer. * infcmd.c (suppress_run_stop_observers): Split into... (suppress_resume_observer, suppress_stop_observer): ...those. (finish_command_continuation): Clear suppress_stop_observer. (finish_command): Set suppress_stop_observer. * inferior.h (suppress_run_stop_observers): Split into... (suppress_resume_observer, suppress_stop_observer): ...those. * infrun.c (normal_stop): Check for suppress_stop_observer. * thread.c (set_running): Check for suppress_resume_observer.
Diffstat (limited to 'gdb/infcall.c')
-rw-r--r--gdb/infcall.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gdb/infcall.c b/gdb/infcall.c
index 33a098f..559b4a2 100644
--- a/gdb/infcall.c
+++ b/gdb/infcall.c
@@ -720,9 +720,10 @@ call_function_by_hand (struct value *function, int nargs, struct value **args)
if (target_can_async_p ())
saved_async = target_async_mask (0);
- old_cleanups2 = make_cleanup_restore_integer
- (&suppress_run_stop_observers);
- suppress_run_stop_observers = 1;
+ old_cleanups2 = make_cleanup_restore_integer (&suppress_resume_observer);
+ suppress_resume_observer = 1;
+ make_cleanup_restore_integer (&suppress_stop_observer);
+ suppress_stop_observer = 1;
proceed (real_pc, TARGET_SIGNAL_0, 0);
do_cleanups (old_cleanups2);