Module: wine Branch: master Commit: bea37208fe2fc0ebff0d3c0fce5f98ce8f98b88b URL: https://gitlab.winehq.org/wine/wine/-/commit/bea37208fe2fc0ebff0d3c0fce5f98c... Author: Bernhard Kölbl <besentv(a)gmail.com> Date: Tue May 30 23:25:27 2023 +0200 mf: Clear queued topologies on session shutdown. Programs might expect objects inside the queued toplogy to be freed, before they eventually call release on the session itself. This fixes reference leaks to stored objects in queued topology nodes, even when IMFMediaSession_Shutdown() was called. Signed-off-by: Bernhard Kölbl <besentv(a)gmail.com> --- dlls/mf/session.c | 1 + 1 file changed, 1 insertion(+) diff --git a/dlls/mf/session.c b/dlls/mf/session.c index 8b29c8487fb..3641cc74b83 100644 --- a/dlls/mf/session.c +++ b/dlls/mf/session.c @@ -2225,6 +2225,7 @@ static HRESULT WINAPI mfsession_Shutdown(IMFMediaSession *iface) IMFPresentationClock_Release(session->clock); session->clock = NULL; session_clear_presentation(session); + session_clear_queued_topologies(session); session_submit_simple_command(session, SESSION_CMD_SHUTDOWN); } LeaveCriticalSection(&session->cs);