Module: wine Branch: master Commit: 26ee9134d5d75ee515ccf06987cd024b64e498aa URL: https://source.winehq.org/git/wine.git/?a=commit;h=26ee9134d5d75ee515ccf0698... Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Thu Feb 11 10:53:49 2021 +0100 ntdll: Re-implement RtlRegisterWait using TpSetWait. This adds several internal flags to TP_WAIT object to support the implementation: * WT_EXECUTEONLYONCE: waits are re-queued unless it is set. * WT_EXECUTEINWAITTHREAD: call the callback in the wait thread when set. * WT_EXECUTEINIOTHREAD: call alertable NtWaitForMultipleObjects in wait thread when set, as well the callback in the wait thread, as for WT_EXECUTEINWAITTHREAD. The worker threads use non-alertable waits otherwise. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47843 Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/kernel32/tests/thread.c | 1 - dlls/ntdll/tests/threadpool.c | 6 +- dlls/ntdll/threadpool.c | 264 ++++++++++++++++-------------------------- 3 files changed, 100 insertions(+), 171 deletions(-) Diff: https://source.winehq.org/git/wine.git/?a=commitdiff;h=26ee9134d5d75ee515ccf...