From c0acbf98a8b9e4e272a42741f0b12ab31c941fae Mon Sep 17 00:00:00 2001 From: tsauerbeck Date: Mon, 31 May 2004 15:54:04 +0000 Subject: [PATCH] you allocate memory, you free it SVN revision: 10396 --- legacy/ecore/src/lib/ecore_config/edb.c | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/legacy/ecore/src/lib/ecore_config/edb.c b/legacy/ecore/src/lib/ecore_config/edb.c index d5ba50e0fb..0a278a8966 100644 --- a/legacy/ecore/src/lib/ecore_config/edb.c +++ b/legacy/ecore/src/lib/ecore_config/edb.c @@ -178,6 +178,7 @@ ecore_config_file_save(char *file) Ecore_Config_Prop *next; E_DB_File *db; struct stat status; + char *tmp; next = __ecore_config_bundle_local->data; db = NULL; @@ -209,13 +210,22 @@ ecore_config_file_save(char *file) e_db_float_set(db, next->key, ecore_config_float_get(next->key)); break; case PT_RGB: - e_db_str_set(db, next->key, ecore_config_rgbstr_get(next->key)); + if ((tmp = ecore_config_rgbstr_get(next->key))) { + e_db_str_set(db, next->key, tmp); + free(tmp); + } break; case PT_STR: - e_db_str_set(db, next->key, ecore_config_string_get(next->key)); + if ((tmp = ecore_config_string_get(next->key))) { + e_db_str_set(db, next->key, tmp); + free(tmp); + } break; case PT_THM: - e_db_str_set(db, next->key, ecore_config_theme_get(next->key)); + if ((tmp = ecore_config_theme_get(next->key))) { + e_db_str_set(db, next->key, tmp); + free(tmp); + } break; case PT_NIL: /* currently we do nothing for undefined ojects */