From: Rémi Bernon rbernon@codeweavers.com
--- dlls/mf/session.c | 25 +------------------------ 1 file changed, 1 insertion(+), 24 deletions(-)
diff --git a/dlls/mf/session.c b/dlls/mf/session.c index e6f37146221..0645313c79c 100644 --- a/dlls/mf/session.c +++ b/dlls/mf/session.c @@ -1026,35 +1026,12 @@ static void session_flush_nodes(struct media_session *session) } }
-static void session_purge_pending_commands(struct media_session *session) -{ - struct session_op *op, *op2; - - /* Purge all commands which are no longer valid after a forced source shutdown. - * Calling Stop() in this case is not required in native Windows. */ - LIST_FOR_EACH_ENTRY_SAFE(op, op2, &session->commands, struct session_op, entry) - { - if (op->command == SESSION_CMD_SET_TOPOLOGY) - break; - if (op->command == SESSION_CMD_CLEAR_TOPOLOGIES || op->command == SESSION_CMD_CLOSE - || op->command == SESSION_CMD_SHUTDOWN) - continue; - /* Once a command is submitted, the callback becomes responsible - * for removal from the list and release of the ref. */ - if (op->submitted) - continue; - list_remove(&op->entry); - IUnknown_Release(&op->IUnknown_iface); - } -} - -static void session_reset(struct media_session *session) +static void session_source_shutdown(struct media_session *session) { /* Media sessions in native Windows are not consistently usable after a * forced source shutdown, but we try to clean up as well as possible. */ session->state = SESSION_STATE_SOURCE_SHUTDOWN; session_clear_presentation(session); - session_purge_pending_commands(session); session_command_complete(session); }