1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-21 21:38:00 +01:00

WMaker: fix memory leak in app icon changing (Coverity #50139)

As pointed by Coverity, there are some cases where the name of the file
returned by wIconChooserDialog could be left unfreed.

Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
This commit is contained in:
Christophe CURIS
2014-05-20 21:46:41 +02:00
committed by Carlos R. Mafra
parent 3a68e974b6
commit c2a357fe1b

View File

@@ -534,13 +534,16 @@ static void setIconCallback(WMenu *menu, WMenuEntry *entry)
result = wIconChooserDialog(scr, &file, icon->wm_instance, icon->wm_class);
if (result && !icon->destroyed) {
if (!wIconChangeImageFile(icon->icon, file)) {
wMessageDialog(scr, _("Error"),
_("Could not open specified icon file"), _("OK"), NULL, NULL);
} else {
wDefaultChangeIcon(icon->wm_instance, icon->wm_class, file);
wAppIconPaint(icon);
if (result) {
if (!icon->destroyed) {
if (!wIconChangeImageFile(icon->icon, file)) {
wMessageDialog(scr, _("Error"),
_("Could not open specified icon file"),
_("OK"), NULL, NULL);
} else {
wDefaultChangeIcon(icon->wm_instance, icon->wm_class, file);
wAppIconPaint(icon);
}
}
if (file)
wfree(file);