From aeb4b7f7b90def0d92c566e9a1288a2dce665bec Mon Sep 17 00:00:00 2001 From: Chris Michael Date: Mon, 8 Jul 2013 11:19:37 +0100 Subject: [PATCH] Fix memleak reported by Coverity: If we fail to allocate a new internal menu, then free the previously allocated memory for xml file. NB: Fixed Coverity CID 1039183 Signed-off-by: Chris Michael --- src/lib/efreet/efreet_menu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/efreet/efreet_menu.c b/src/lib/efreet/efreet_menu.c index feea57d3ea..098f8c79c8 100644 --- a/src/lib/efreet/efreet_menu.c +++ b/src/lib/efreet/efreet_menu.c @@ -1452,7 +1452,11 @@ efreet_menu_merge(Efreet_Menu_Internal *parent, Efreet_Xml *xml, const char *pat } internal = efreet_menu_internal_new(parent); - if (!internal) return 0; + if (!internal) + { + efreet_xml_del(merge_xml); + return 0; + } efreet_menu_path_set(internal, path); efreet_menu_handle_menu(internal, merge_xml); efreet_menu_concatenate(parent, internal);