Signed-off-by: Alex Henrie alexhenrie24@gmail.com --- programs/winemenubuilder/winemenubuilder.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/programs/winemenubuilder/winemenubuilder.c b/programs/winemenubuilder/winemenubuilder.c index 1a11afb7791..900e81dbcf2 100644 --- a/programs/winemenubuilder/winemenubuilder.c +++ b/programs/winemenubuilder/winemenubuilder.c @@ -2018,6 +2018,7 @@ static BOOL generate_associations(const WCHAR *packages_dir, const WCHAR *applic struct wine_rb_tree mimeProgidTree = { winemenubuilder_rb_string_compare }; struct list nativeMimeTypes = LIST_INIT(nativeMimeTypes); int i; + WCHAR *icon_name; BOOL hasChanged = FALSE;
if (!build_native_mime_types(&nativeMimeTypes)) @@ -2078,8 +2079,9 @@ static BOOL generate_associations(const WCHAR *packages_dir, const WCHAR *applic *comma = 0; index = wcstol(comma + 1, NULL, 10); } - extract_icon(iconW, index, flattened_mime, FALSE); + icon_name = extract_icon(iconW, index, flattened_mime, FALSE); heap_free(flattened_mime); + heap_free(icon_name); }
write_freedesktop_mime_type_entry(packages_dir, extensionW, mimeType, friendlyDocNameW); @@ -2128,7 +2130,11 @@ static BOOL generate_associations(const WCHAR *packages_dir, const WCHAR *applic heap_free(desktopPath); }
- if (hasChanged && openWithIcon) extract_icon(executableW, 0, openWithIcon, FALSE); + if (hasChanged && openWithIcon) + { + icon_name = extract_icon(executableW, 0, openWithIcon, FALSE); + heap_free(icon_name); + }
end: heap_free(commandW);