ntdll: Use a critical section to ensure that RtlWaitOnAddress compares and queues...
commit6060d2703c2e1382f076ad40ea43980781eaca2c
authorZebediah Figura <z.figura12@gmail.com>
Sat, 1 Dec 2018 01:03:57 +0000 (30 19:03 -0600)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 4 Dec 2018 15:13:10 +0000 (4 16:13 +0100)
treeb2af390a5118df697921e042a1c5003386f5cc7e
parent0ea963a4063395a7a4611b435eb74b5cf0830116
ntdll: Use a critical section to ensure that RtlWaitOnAddress compares and queues atomically.

Currently a wake may occur between calling compare_addr() and performing the
select request; in that case the thread will never be woken. Prevent this by
taking a CS around both operations.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46099
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
dlls/ntdll/sync.c