[PATCH] quartz: Fix memory leaks on error paths in FilterMapper3_RegisterFilter (cppcheck)
Alex Henrie
alexhenrie24 at gmail.com
Sun Dec 19 22:56:08 CST 2021
Signed-off-by: Alex Henrie <alexhenrie24 at gmail.com>
---
dlls/quartz/filtermapper.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/dlls/quartz/filtermapper.c b/dlls/quartz/filtermapper.c
index 230273891d4..a95f0ca7832 100644
--- a/dlls/quartz/filtermapper.c
+++ b/dlls/quartz/filtermapper.c
@@ -894,12 +894,16 @@ static HRESULT WINAPI FilterMapper3_RegisterFilter(IFilterMapper3 *iface,
if (FAILED(hr = CoCreateInstance(&CLSID_CDeviceMoniker, NULL, CLSCTX_INPROC,
&IID_IParseDisplayName, (void **)&parser)))
+ {
+ free(display_name);
return hr;
+ }
if (FAILED(hr = IParseDisplayName_ParseDisplayName(parser, NULL, display_name, &eaten, &moniker)))
{
ERR("Failed to parse display name, hr %#x.\n", hr);
IParseDisplayName_Release(parser);
+ free(display_name);
return hr;
}
@@ -909,6 +913,7 @@ static HRESULT WINAPI FilterMapper3_RegisterFilter(IFilterMapper3 *iface,
{
ERR("Failed to get property bag, hr %#x.\n", hr);
IMoniker_Release(moniker);
+ free(display_name);
return hr;
}
--
2.34.1
More information about the wine-devel
mailing list