From: Rémi Bernon rbernon@codeweavers.com
--- dlls/mp3dmod/mp3dmod.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/dlls/mp3dmod/mp3dmod.c b/dlls/mp3dmod/mp3dmod.c index bf518f38f39..383ad9818b8 100644 --- a/dlls/mp3dmod/mp3dmod.c +++ b/dlls/mp3dmod/mp3dmod.c @@ -805,7 +805,9 @@ static HRESULT WINAPI MFTransform_GetInputAvailableType(IMFTransform *iface, DWO if (FAILED(hr = MFCreateMediaType(type))) return hr;
- return MFInitMediaTypeFromAMMediaType(*type, (AM_MEDIA_TYPE*)&pt); + hr = MFInitMediaTypeFromAMMediaType(*type, (AM_MEDIA_TYPE*)&pt); + MoFreeMediaType(&pt); + return hr; }
static HRESULT WINAPI MFTransform_GetOutputAvailableType(IMFTransform *iface, DWORD id, DWORD index, @@ -887,6 +889,7 @@ static HRESULT WINAPI MFTransform_SetInputType(IMFTransform *iface, DWORD id, IM return hr;
hr = IMediaObject_SetInputType(&decoder->IMediaObject_iface, id, &mt, flags); + MoFreeMediaType(&mt);
if (hr == S_FALSE) return MF_E_INVALIDMEDIATYPE; @@ -910,6 +913,7 @@ static HRESULT WINAPI MFTransform_SetOutputType(IMFTransform *iface, DWORD id, I return hr;
hr = IMediaObject_SetOutputType(&decoder->IMediaObject_iface, id, &mt, flags); + MoFreeMediaType(&mt);
if (hr == S_FALSE) return MF_E_INVALIDMEDIATYPE; @@ -933,7 +937,9 @@ static HRESULT WINAPI MFTransform_GetInputCurrentType(IMFTransform *iface, DWORD if (FAILED(hr = MFCreateMediaType(out))) return hr;
- return MFInitMediaTypeFromAMMediaType(*out, (AM_MEDIA_TYPE*)&mt); + hr = MFInitMediaTypeFromAMMediaType(*out, (AM_MEDIA_TYPE*)&mt); + MoFreeMediaType(&mt); + return hr; }
static HRESULT WINAPI MFTransform_GetOutputCurrentType(IMFTransform *iface, DWORD id, IMFMediaType **out) @@ -950,7 +956,9 @@ static HRESULT WINAPI MFTransform_GetOutputCurrentType(IMFTransform *iface, DWOR if (FAILED(hr = MFCreateMediaType(out))) return hr;
- return MFInitMediaTypeFromAMMediaType(*out, (AM_MEDIA_TYPE*)&mt); + hr = MFInitMediaTypeFromAMMediaType(*out, (AM_MEDIA_TYPE*)&mt); + MoFreeMediaType(&mt); + return hr; }
static HRESULT WINAPI MFTransform_GetInputStatus(IMFTransform *iface, DWORD id, DWORD *flags)