Nikolay Sivov : winegstreamer: Let async command handle request token.

Alexandre Julliard julliard at winehq.org
Tue Jun 15 16:19:26 CDT 2021


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

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Tue Jun 15 09:48:42 2021 +0300

winegstreamer: Let async command handle request token.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/winegstreamer/media_source.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/dlls/winegstreamer/media_source.c b/dlls/winegstreamer/media_source.c
index 3c87bbb2146..9c554c7c415 100644
--- a/dlls/winegstreamer/media_source.c
+++ b/dlls/winegstreamer/media_source.c
@@ -170,6 +170,11 @@ static ULONG WINAPI source_async_command_Release(IUnknown *iface)
     {
         if (command->op == SOURCE_ASYNC_START)
             PropVariantClear(&command->u.start.position);
+        else if (command->op == SOURCE_ASYNC_REQUEST_SAMPLE)
+        {
+            if (command->u.request_sample.token)
+                IUnknown_Release(command->u.request_sample.token);
+        }
         free(command);
     }
 
@@ -467,8 +472,6 @@ static void wait_on_sample(struct media_stream *stream, IUnknown *token)
 
             case WG_PARSER_EVENT_EOS:
                 stream->eos = TRUE;
-                if (token)
-                    IUnknown_Release(token);
                 IMFMediaEventQueue_QueueEventParamVar(stream->event_queue, MEEndOfStream, &GUID_NULL, S_OK, &empty_var);
                 dispatch_end_of_presentation(stream->parent_source);
                 return;




More information about the wine-cvs mailing list