summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Schmidt <s.schmidt@samsung.com>2014-03-28 10:51:29 +0100
committerStefan Schmidt <s.schmidt@samsung.com>2014-03-28 10:56:29 +0100
commitc4b4d2ed587b71dbf01e85043a93c545882234bf (patch)
tree898c36d0f717d594b9e55bb6d6a0bfe1bf84d7a0
parentb0458b013734b7538f70c403ab5eed2f51328d93 (diff)
downloadenlightenment-c4b4d2ed587b71dbf01e85043a93c545882234bf.tar.gz
music-control: Do not leak the allocated metadata strings
Fix for ca07e7d505274377635fda2a79d8ac8c61877ea6 Thanks are going to Davide Andreoli for spotting it.
-rw-r--r--src/modules/music-control/e_mod_main.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/modules/music-control/e_mod_main.c b/src/modules/music-control/e_mod_main.c
index b8e7244ef3..36aaaa743c 100644
--- a/src/modules/music-control/e_mod_main.c
+++ b/src/modules/music-control/e_mod_main.c
@@ -224,7 +224,8 @@ parse_metadata(E_Music_Control_Module_Context *ctxt, Eina_Value *array)
for (i = 0; i < eina_value_array_count(array); i++)
{
- const char *key, *str_val, *str_markup;
+ const char *key, *str_val;
+ char *str_markup;
Eina_Value st, subst;
Efreet_Uri *uri;
@@ -236,6 +237,7 @@ parse_metadata(E_Music_Control_Module_Context *ctxt, Eina_Value *array)
eina_value_struct_get(&subst, "arg0", &str_val);
str_markup = evas_textblock_text_utf8_to_markup(NULL, str_val);
ctxt->meta_title = eina_stringshare_add(str_markup);
+ free(str_markup);
eina_value_flush(&subst);
}
else if (!strcmp(key, "xesam:album"))
@@ -244,6 +246,7 @@ parse_metadata(E_Music_Control_Module_Context *ctxt, Eina_Value *array)
eina_value_struct_get(&subst, "arg0", &str_val);
str_markup = evas_textblock_text_utf8_to_markup(NULL, str_val);
ctxt->meta_album = eina_stringshare_add(str_markup);
+ free(str_markup);
eina_value_flush(&subst);
}
else if (!strcmp(key, "xesam:artist"))
@@ -254,6 +257,7 @@ parse_metadata(E_Music_Control_Module_Context *ctxt, Eina_Value *array)
eina_value_array_get(&arr, 0, &str_val);
str_markup = evas_textblock_text_utf8_to_markup(NULL, str_val);
ctxt->meta_artist = eina_stringshare_add(str_markup);
+ free(str_markup);
eina_value_flush(&arr);
eina_value_flush(&subst);
}