Module: wine Branch: master Commit: e9a29249b80a8ad7e82f0c8b9510d891850921a0 URL: https://source.winehq.org/git/wine.git/?a=commit;h=e9a29249b80a8ad7e82f0c8b9...
Author: Rémi Bernon rbernon@codeweavers.com Date: Wed Apr 14 09:49:09 2021 +0300
mfplat: Release queue subscriber on Shutdown.
Signed-off-by: Rémi Bernon rbernon@codeweavers.com Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/mfplat/main.c | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/dlls/mfplat/main.c b/dlls/mfplat/main.c index de2b5c6ee51..e23c648c823 100644 --- a/dlls/mfplat/main.c +++ b/dlls/mfplat/main.c @@ -7006,6 +7006,13 @@ static IMFMediaEvent *queue_pop_event(struct event_queue *queue) return event; }
+static void event_queue_clear_subscriber(struct event_queue *queue) +{ + if (queue->subscriber) + IRtwqAsyncResult_Release(queue->subscriber); + queue->subscriber = NULL; +} + static void event_queue_cleanup(struct event_queue *queue) { IMFMediaEvent *event; @@ -7258,6 +7265,7 @@ static HRESULT WINAPI eventqueue_Shutdown(IMFMediaEventQueue *iface) if (!queue->is_shut_down) { event_queue_cleanup(queue); + event_queue_clear_subscriber(queue); queue->is_shut_down = TRUE; }