Sept. 18, 2022
12:40 p.m.
I asked before, but I don't think I got an answer: what's unimplemented about the "io" parameter? It's not obvious just from reading the function.
As shown in the tests, the implementation's behaviour regarding `io` is not precise. On Windows 10, supplying an invalid address results in `STATUS_ACCESS_VIOLATION`; however, this implementation (and Windows < 10) simply fails with `STATUS_NOT_FOUND`. This is indicative of the Windows implementation actually doing *something* with the block, so it's worth a FIXME until the behaviour matches Windows. Also, the FIXME won't cause much noise as it's not a common case (e.g. `CancelSynchronousIo` does not use it). -- https://gitlab.winehq.org/wine/wine/-/merge_requests/47#note_8773