Skip to content

Commit

Permalink
mf: Never drop markers in session_deliver_sample_to_node().
Browse files Browse the repository at this point in the history
CW-Bug-Id: #21804
  • Loading branch information
Paul Gofman committed Jan 25, 2023
1 parent 996a68f commit 3ced19d
Showing 1 changed file with 4 additions and 5 deletions.
9 changes: 4 additions & 5 deletions dlls/mf/session.c
Original file line number Diff line number Diff line change
Expand Up @@ -3003,18 +3003,17 @@ static void session_deliver_sample_to_node(struct media_session *session, IMFTop
switch (node_type)
{
case MF_TOPOLOGY_OUTPUT_NODE:
if (!sample && FAILED(hr = IMFStreamSink_PlaceMarker(topo_node->object.sink_stream, MFSTREAMSINK_MARKER_ENDOFSEGMENT,
NULL, NULL)))
WARN("Failed to place sink marker, hr %#lx.\n", hr);

if (topo_node->u.sink.requests)
{
if (sample)
{
if (FAILED(hr = IMFStreamSink_ProcessSample(topo_node->object.sink_stream, sample)))
WARN("Stream sink failed to process sample, hr %#lx.\n", hr);
}
else if (FAILED(hr = IMFStreamSink_PlaceMarker(topo_node->object.sink_stream, MFSTREAMSINK_MARKER_ENDOFSEGMENT,
NULL, NULL)))
{
WARN("Failed to place sink marker, hr %#lx.\n", hr);
}
topo_node->u.sink.requests--;
}
break;
Expand Down

0 comments on commit 3ced19d

Please sign in to comment.