diff options
author | Vladimir Prus <vladimir@codesourcery.com> | 2008-06-13 20:19:19 +0000 |
---|---|---|
committer | Vladimir Prus <vladimir@codesourcery.com> | 2008-06-13 20:19:19 +0000 |
commit | bef29bb9f154e9d4e5b815d3628639f4e2009fc6 (patch) | |
tree | 006e6a3a95e67565bf20e5d57480fe392eb28562 /gdb/infcall.c | |
parent | d6e744335076c2d1b40f4194bb1e466bebe0f42e (diff) | |
download | gdb-bef29bb9f154e9d4e5b815d3628639f4e2009fc6.tar.gz |
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.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/gdb/infcall.c b/gdb/infcall.c index 33a098ff59e..559b4a2e7b9 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); |