mf/session: Reset per-node end of stream flags when stopped.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Nikolay Sivov 2021-06-15 12:00:13 +03:00 committed by Alexandre Julliard
parent 6a68e345f8
commit f0ebd66189
1 changed files with 5 additions and 0 deletions

View File

@ -946,12 +946,17 @@ static void session_pause(struct media_session *session)
static void session_clear_end_of_presentation(struct media_session *session) static void session_clear_end_of_presentation(struct media_session *session)
{ {
struct media_source *source; struct media_source *source;
struct topo_node *node;
session->presentation.flags &= ~SESSION_FLAG_END_OF_PRESENTATION; session->presentation.flags &= ~SESSION_FLAG_END_OF_PRESENTATION;
LIST_FOR_EACH_ENTRY(source, &session->presentation.sources, struct media_source, entry) LIST_FOR_EACH_ENTRY(source, &session->presentation.sources, struct media_source, entry)
{ {
source->flags &= ~SOURCE_FLAG_END_OF_PRESENTATION; source->flags &= ~SOURCE_FLAG_END_OF_PRESENTATION;
} }
LIST_FOR_EACH_ENTRY(node, &session->presentation.nodes, struct topo_node, entry)
{
node->flags &= ~TOPO_NODE_END_OF_STREAM;
}
} }
static void session_set_stopped(struct media_session *session, HRESULT status) static void session_set_stopped(struct media_session *session, HRESULT status)