Zebediah Figura (@zfigura) commented about dlls/wmvcore/async_reader.c:
+ + LeaveCriticalSection(&reader->callback_cs); + hr = IWMSyncReader2_GetNextSample(reader->reader, stream->number, + &sample->buffer, &sample->pts, &sample->duration, + &sample->flags, &sample->output, &sample->stream); + EnterCriticalSection(&reader->callback_cs); + } + + if (SUCCEEDED(stream->read_result = hr)) + { + TRACE("Got stream %u buffer with pts %I64d.\n", stream->number, sample->pts); + stream->next_sample = sample; + } + else + { + WARN("Failed to get stream %u sample, hr %#lx.\n", stream->number, stream->read_result); Missed this the first time, but: I'd make this an ERR, personally. (An application can trigger it, but it's one of those cases where it's a sign that something went catastrophically wrong, and also we're pretty much guessing how to handle it if not.)
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/1311#note_15865