mf/session: Keep a reference to the original activation object when binding sink nodes.

Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Nikolay Sivov 2020-11-20 16:21:17 +03:00 committed by Alexandre Julliard
parent b3461c4864
commit 39cac934ef
1 changed files with 7 additions and 0 deletions

View File

@ -32,6 +32,10 @@
#include "mf_private.h" #include "mf_private.h"
#include "initguid.h"
DEFINE_GUID(_MF_TOPONODE_IMFActivate, 0x33706f4a, 0x309a, 0x49be, 0xa8, 0xdd, 0xe7, 0xc0, 0x87, 0x5e, 0xb6, 0x79);
WINE_DEFAULT_DEBUG_CHANNEL(mfplat); WINE_DEFAULT_DEBUG_CHANNEL(mfplat);
enum session_command enum session_command
@ -683,6 +687,9 @@ static HRESULT session_bind_output_nodes(IMFTopology *topology)
IMFMediaSink_Release(media_sink); IMFMediaSink_Release(media_sink);
} }
if (SUCCEEDED(hr))
IMFTopologyNode_SetUnknown(node, &_MF_TOPONODE_IMFActivate, (IUnknown *)activate);
IMFActivate_Release(activate); IMFActivate_Release(activate);
} }
} }