diff --git a/src/windows-emulator/devices/afd_endpoint.cpp b/src/windows-emulator/devices/afd_endpoint.cpp index 2eed0d1b..cb8086cb 100644 --- a/src/windows-emulator/devices/afd_endpoint.cpp +++ b/src/windows-emulator/devices/afd_endpoint.cpp @@ -523,14 +523,6 @@ namespace return STATUS_NOT_SUPPORTED; } - if (this->delayed_ioctl_) - { - if (auto* e = win_emu.process.events.get(c.event)) - { - e->signaled = false; - } - } - const auto request = _AFD_REQUEST(c.io_control_code); win_emu.log.print(color::dark_gray, "--> AFD IOCTL: 0x%X (%d)\n", c.io_control_code, request); diff --git a/src/windows-emulator/syscalls.cpp b/src/windows-emulator/syscalls.cpp index 14e4d8b9..9e0e8f15 100644 --- a/src/windows-emulator/syscalls.cpp +++ b/src/windows-emulator/syscalls.cpp @@ -441,6 +441,11 @@ namespace syscalls return STATUS_INVALID_HANDLE; } + if (auto* e = c.win_emu.process.events.get(event)) + { + e->signaled = false; + } + io_device_context context{c.emu}; context.event = event; context.apc_routine = apc_routine;