Fixes Soulcalibur VI video playback when MF pipelines are used.
From: Rémi Bernon rbernon@codeweavers.com
Fixes Soulcalibur VI video playback when MF pipelines are used. --- dlls/mf/topology_loader.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/dlls/mf/topology_loader.c b/dlls/mf/topology_loader.c index f0fc2060bc0..73f70e62bc6 100644 --- a/dlls/mf/topology_loader.c +++ b/dlls/mf/topology_loader.c @@ -335,11 +335,13 @@ static HRESULT topology_branch_connect_indirect(IMFTopology *topology, MF_CONNEC IMFTopologyNode_SetGUID(node, &MF_TOPONODE_TRANSFORM_OBJECTID, &guid);
hr = topology_branch_connect_down(topology, MF_CONNECT_DIRECT, &up_branch, up_type); - if (down_type) + if (down_type && SUCCEEDED(MFCreateMediaType(&media_type))) { - if (SUCCEEDED(update_media_type_from_upstream(down_type, up_type)) - && SUCCEEDED(IMFTransform_SetOutputType(transform, 0, down_type, 0))) + if (SUCCEEDED(IMFMediaType_CopyAllItems(down_type, (IMFAttributes *)media_type)) + && SUCCEEDED(update_media_type_from_upstream(media_type, up_type)) + && SUCCEEDED(IMFTransform_SetOutputType(transform, 0, media_type, 0))) method = MF_CONNECT_DIRECT; + IMFMediaType_Release(media_type); } IMFTransform_Release(transform);
This merge request was approved by Nikolay Sivov.