eolian: fix memory leak

This commit is contained in:
Daniel Kolesa 2014-07-16 00:30:48 +01:00
parent ae3eb2b942
commit 198a61c37d
1 changed files with 7 additions and 3 deletions

View File

@ -202,9 +202,9 @@ _db_fill_property(Eolian_Class *cl, Eo_Class_Def *kls, Eo_Property_Def *prop)
database_function_scope_set(foo_id, prop->scope);
if (!_db_fill_keys (foo_id, prop)) return EINA_FALSE;
if (!_db_fill_values (foo_id, prop)) return EINA_FALSE;
if (!_db_fill_accessors(foo_id, kls, prop)) return EINA_FALSE;
if (!_db_fill_keys (foo_id, prop)) goto failure;
if (!_db_fill_values (foo_id, prop)) goto failure;
if (!_db_fill_accessors(foo_id, kls, prop)) goto failure;
if (!prop->accessors)
{
@ -216,6 +216,10 @@ _db_fill_property(Eolian_Class *cl, Eo_Class_Def *kls, Eo_Property_Def *prop)
database_class_function_add(cl, foo_id);
return EINA_TRUE;
failure:
database_function_del(foo_id);
return EINA_FALSE;
}
static Eina_Bool