5 Feb
2026
5 Feb
'26
1:08 p.m.
If the caller passes the same pointer to WriteFile as it passes to GetOverlappedResult in another thread, the writes to the memory location in the two files will race each other. --- Is there ever a case where piosb->Information != 0 when status != 0 (or NT_ERROR(status))? If an error status always suggests a 0 length, we can remove the check for overlapped != NULL here. DeviceIoControl is potentially affected too, but it doesn't set *returned=0 in any situation. I think ws2_32:AcceptEx might be affected by the same problem too. The other ws32_32 functions look ok. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10035