Module: wine Branch: master Commit: e7075780077cbbcb9d994f4a4cdbba6cc88b2d01 URL: https://source.winehq.org/git/wine.git/?a=commit;h=e7075780077cbbcb9d994f4a4...
Author: Zebediah Figura z.figura12@gmail.com Date: Thu Jul 23 19:29:22 2020 -0500
winegstreamer: Release the IAsyncReader on disconnection.
This allows "Zero Escape: Nine Hours, Nine Persons, Nine Doors" to start.
Signed-off-by: Zebediah Figura z.figura12@gmail.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/qedit/tests/mediadet.c | 4 ++-- dlls/winegstreamer/gstdemux.c | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/qedit/tests/mediadet.c b/dlls/qedit/tests/mediadet.c index 9bf6c43a2a..dc83bb9a0a 100644 --- a/dlls/qedit/tests/mediadet.c +++ b/dlls/qedit/tests/mediadet.c @@ -1147,9 +1147,9 @@ START_TEST(mediadet) test_COM_sg_enumpins();
ret = DeleteFileW(test_avi_filename); - todo_wine ok(ret, "Failed to delete file, error %u.\n", GetLastError()); + ok(ret, "Failed to delete file, error %u.\n", GetLastError()); ret = DeleteFileW(test_sound_avi_filename); - todo_wine ok(ret, "Failed to delete file, error %u.\n", GetLastError()); + ok(ret, "Failed to delete file, error %u.\n", GetLastError());
CoUninitialize(); } diff --git a/dlls/winegstreamer/gstdemux.c b/dlls/winegstreamer/gstdemux.c index 9de1b16411..fe5fe0e60d 100644 --- a/dlls/winegstreamer/gstdemux.c +++ b/dlls/winegstreamer/gstdemux.c @@ -1598,6 +1598,9 @@ static void gstdemux_sink_disconnect(struct strmbase_sink *iface) mark_wine_thread();
GST_RemoveOutputPins(filter); + + IAsyncReader_Release(filter->reader); + filter->reader = NULL; }
static const struct strmbase_sink_ops sink_ops =