Rémi Bernon : winegstreamer: Leave the stream CS while waiting for a sample.
Module: wine Branch: master Commit: efe0504f5f04a349473557e90a7484c4cac294c3 URL: https://gitlab.winehq.org/wine/wine/-/commit/efe0504f5f04a349473557e90a7484c... Author: Rémi Bernon <rbernon(a)codeweavers.com> Date: Tue Aug 2 11:59:16 2022 +0200 winegstreamer: Leave the stream CS while waiting for a sample. This may call AllocateForOutput/Stream callbacks, and it may block. --- dlls/winegstreamer/wm_asyncreader.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dlls/winegstreamer/wm_asyncreader.c b/dlls/winegstreamer/wm_asyncreader.c index 9d8c2be45cb..a4dc077d341 100644 --- a/dlls/winegstreamer/wm_asyncreader.c +++ b/dlls/winegstreamer/wm_asyncreader.c @@ -88,7 +88,9 @@ static DWORD WINAPI stream_thread(void *arg) while (reader->running) { + LeaveCriticalSection(&reader->stream_cs); hr = wm_reader_get_stream_sample(&reader->reader, callback_advanced, 0, &sample, &pts, &duration, &flags, &stream_number); + EnterCriticalSection(&reader->stream_cs); if (hr != S_OK) break;
participants (1)
-
Alexandre Julliard