Regarding the test, I agree with @rbernon, it looks large and fragile.
There is no way to deterministically trigger the bug this MR is fixing. I acknowledge that this might not be something we want to test for anyway. So I need some suggestion about what kind of tests I should write instead?
... by using some source stub that never finishes seeking. I suspect we need to keep track of read requests until seek is finished.
I don't think we necessarily do, if read requests are never queued until seeking has finished. (like we do right now, i.e. setting the SEEKING flag, then in `ReadSample` loop sleeping until the flag is cleared). Primarily testing shows this is what native does as well (if seeking never finishes, `ReadSample` will block). -- https://gitlab.winehq.org/wine/wine/-/merge_requests/11174#note_144633