Zebediah Figura : winegstreamer: Release stream_cs on error in stream_thread().

Alexandre Julliard julliard at winehq.org
Tue Feb 8 16:11:44 CST 2022


Module: wine
Branch: master
Commit: fc5719e4c57079b19bde8d169bf0b55194649e73
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=fc5719e4c57079b19bde8d169bf0b55194649e73

Author: Zebediah Figura <zfigura at codeweavers.com>
Date:   Mon Feb  7 17:19:31 2022 -0600

winegstreamer: Release stream_cs on error in stream_thread().

This fixes a deadlock when trying to skip video in Persona 4 Golden.

Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winegstreamer/wm_asyncreader.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/dlls/winegstreamer/wm_asyncreader.c b/dlls/winegstreamer/wm_asyncreader.c
index fc919ef2c49..9dfe2380284 100644
--- a/dlls/winegstreamer/wm_asyncreader.c
+++ b/dlls/winegstreamer/wm_asyncreader.c
@@ -146,6 +146,7 @@ static DWORD WINAPI stream_thread(void *arg)
             else if (hr != NS_E_NO_MORE_SAMPLES)
             {
                 ERR("Failed to get sample, hr %#lx.\n", hr);
+                LeaveCriticalSection(&reader->stream_cs);
                 return 0;
             }
         }




More information about the wine-cvs mailing list