Nikolay Sivov : mf: Add async command for stopping the session.
Alexandre Julliard
julliard at winehq.org
Fri Oct 4 16:34:05 CDT 2019
Module: wine
Branch: master
Commit: 3471b779a5aa33fee991cb7e2c8eb3005592a966
URL: https://source.winehq.org/git/wine.git/?a=commit;h=3471b779a5aa33fee991cb7e2c8eb3005592a966
Author: Nikolay Sivov <nsivov at codeweavers.com>
Date: Fri Oct 4 14:42:44 2019 +0300
mf: Add async command for stopping the session.
Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/mf/session.c | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/dlls/mf/session.c b/dlls/mf/session.c
index 6b993b1d60..5ac8bd97ae 100644
--- a/dlls/mf/session.c
+++ b/dlls/mf/session.c
@@ -39,6 +39,7 @@ enum session_command
SESSION_CMD_SET_TOPOLOGY,
SESSION_CMD_START,
SESSION_CMD_PAUSE,
+ SESSION_CMD_STOP,
};
struct session_op
@@ -736,9 +737,19 @@ static HRESULT WINAPI mfsession_Pause(IMFMediaSession *iface)
static HRESULT WINAPI mfsession_Stop(IMFMediaSession *iface)
{
- FIXME("(%p)\n", iface);
+ struct media_session *session = impl_from_IMFMediaSession(iface);
+ struct session_op *op;
+ HRESULT hr;
- return E_NOTIMPL;
+ TRACE("%p.\n", iface);
+
+ if (FAILED(hr = create_session_op(SESSION_CMD_STOP, &op)))
+ return hr;
+
+ hr = session_submit_command(session, op);
+ IUnknown_Release(&op->IUnknown_iface);
+
+ return hr;
}
static HRESULT WINAPI mfsession_Close(IMFMediaSession *iface)
More information about the wine-cvs
mailing list