diff options
-rw-r--r-- | gdb/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/record-full.c | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 0e617df..c73a8cd 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,12 @@ 2021-02-04 Simon Marchi <simon.marchi@efficios.com> + * record-full.c (record_full_async_inferior_event_handler): + Don't clear async event handler. + (record_full_base_target::wait): Clear async event handler at + beginning. + +2021-02-04 Simon Marchi <simon.marchi@efficios.com> + * record-btrace.c (record_btrace_handle_async_inferior_event): Don't clear async event handler. (record_btrace_target::wait): Clear async event handler at diff --git a/gdb/record-full.c b/gdb/record-full.c index 247573c..2373741 100644 --- a/gdb/record-full.c +++ b/gdb/record-full.c @@ -903,7 +903,6 @@ static struct async_event_handler *record_full_async_inferior_event_token; static void record_full_async_inferior_event_handler (gdb_client_data data) { - clear_async_event_handler (record_full_async_inferior_event_token); inferior_event_handler (INF_REG_EVENT); } @@ -1454,6 +1453,8 @@ record_full_base_target::wait (ptid_t ptid, struct target_waitstatus *status, { ptid_t return_ptid; + clear_async_event_handler (record_full_async_inferior_event_token); + return_ptid = record_full_wait_1 (this, ptid, status, options); if (status->kind != TARGET_WAITKIND_IGNORE) { |