diff options
Diffstat (limited to 'gdb/target.c')
-rw-r--r-- | gdb/target.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gdb/target.c b/gdb/target.c index cb89e75..246d292 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -2329,6 +2329,34 @@ target_resume (ptid_t ptid, int step, enum gdb_signal signal) clear_inline_frame_state (ptid); } +/* If true, target_commit_resume is a nop. */ +static int defer_target_commit_resume; + +/* See target.h. */ + +void +target_commit_resume (void) +{ + struct target_ops *t; + + if (defer_target_commit_resume) + return; + + current_target.to_commit_resume (¤t_target); +} + +/* See target.h. */ + +struct cleanup * +make_cleanup_defer_target_commit_resume (void) +{ + struct cleanup *old_chain; + + old_chain = make_cleanup_restore_integer (&defer_target_commit_resume); + defer_target_commit_resume = 1; + return old_chain; +} + void target_pass_signals (int numsigs, unsigned char *pass_signals) { |