Module: wine Branch: master Commit: 5ef7a45bc9bbb21c1892ce939670302f15214601 URL: https://gitlab.winehq.org/wine/wine/-/commit/5ef7a45bc9bbb21c1892ce939670302...
Author: Shaun Ren sren@codeweavers.com Date: Sat Dec 17 00:30:26 2022 -0500
mfmediaengine: Pause the session in media_engine_Pause.
---
dlls/mfmediaengine/main.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c index 27dafd616a2..63e9a8f07d5 100644 --- a/dlls/mfmediaengine/main.c +++ b/dlls/mfmediaengine/main.c @@ -1952,11 +1952,14 @@ static HRESULT WINAPI media_engine_Pause(IMFMediaEngineEx *iface) { if (!(engine->flags & FLAGS_ENGINE_PAUSED)) { - media_engine_set_flag(engine, FLAGS_ENGINE_WAITING | FLAGS_ENGINE_IS_ENDED, FALSE); - media_engine_set_flag(engine, FLAGS_ENGINE_PAUSED, TRUE); + if (SUCCEEDED(hr = IMFMediaSession_Pause(engine->session))) + { + media_engine_set_flag(engine, FLAGS_ENGINE_WAITING | FLAGS_ENGINE_IS_ENDED, FALSE); + media_engine_set_flag(engine, FLAGS_ENGINE_PAUSED, TRUE);
- IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_TIMEUPDATE, 0, 0); - IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_PAUSE, 0, 0); + IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_TIMEUPDATE, 0, 0); + IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_PAUSE, 0, 0); + } }
IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_PURGEQUEUEDEVENTS, 0, 0);