• Zebediah Figura's avatar
    ntdll/tests: Avoid testing the server pipe signaled state from the main thread. · 1a028626
    Zebediah Figura authored
    Although the test has never been observed to fail on Windows, I think the
    failure is genuinely a race in the test.
    
    File handles (like events) are signaled in order to mark that an I/O operation
    has completed. In this case the I/O operation includes manipulating data on both
    ends of the pipe, and as part of that may signal the other end. Internally,
    however, the file handle must logically happen *after* all of this processing
    has taken place, not least because (given the Windows I/O architecture) it is
    the job of the I/O manager, not the IRP handler.
    
    Since the purpose of the test is probably just to check that the file handle
    will be signaled after a synchronous I/O operation has completed, we may as well
    check it from the client thread, after we know for sure that it has.
    
    Wine-Bug: https://bugs.winehq.org//show_bug.cgi?id=54078
    1a028626
Name
Last commit
Last update
..
tests Loading commit data...
unix Loading commit data...
Makefile.in Loading commit data...
actctx.c Loading commit data...
atom.c Loading commit data...
crypt.c Loading commit data...
debugbuffer.c Loading commit data...
env.c Loading commit data...
error.c Loading commit data...
error.h Loading commit data...
exception.c Loading commit data...
handletable.c Loading commit data...
heap.c Loading commit data...
large_int.c Loading commit data...
loader.c Loading commit data...
locale.c Loading commit data...
locale_private.h Loading commit data...
make_errors Loading commit data...
math.c Loading commit data...
misc.c Loading commit data...
ntdll.spec Loading commit data...
ntdll_misc.h Loading commit data...
path.c Loading commit data...
printf.c Loading commit data...
printf.h Loading commit data...
process.c Loading commit data...
reg.c Loading commit data...
relay.c Loading commit data...
resource.c Loading commit data...
rtl.c Loading commit data...
rtlbitmap.c Loading commit data...
rtlstr.c Loading commit data...
sec.c Loading commit data...
signal_arm.c Loading commit data...
signal_arm64.c Loading commit data...
signal_i386.c Loading commit data...
signal_x86_64.c Loading commit data...
string.c Loading commit data...
sync.c Loading commit data...
thread.c Loading commit data...
threadpool.c Loading commit data...
time.c Loading commit data...
unixlib.h Loading commit data...
version.c Loading commit data...
version.rc Loading commit data...
wcstring.c Loading commit data...