From e8710d035b1f8df97134b071572f50a75b383905 Mon Sep 17 00:00:00 2001 From: Gustavo Sverzut Barbieri Date: Wed, 11 Jan 2012 21:34:49 +0000 Subject: [PATCH] eina_value: fix error condition handling. SVN revision: 67094 --- legacy/eina/src/lib/eina_value.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/legacy/eina/src/lib/eina_value.c b/legacy/eina/src/lib/eina_value.c index c5b34d2fb0..6c9392fc2f 100644 --- a/legacy/eina/src/lib/eina_value.c +++ b/legacy/eina/src/lib/eina_value.c @@ -2416,7 +2416,11 @@ _eina_value_type_array_copy(const Eina_Value_Type *type __UNUSED__, const void * int i = eina_inarray_append(d->array, placeholder); void *imem = eina_inarray_nth(d->array, i); if ((i < 0) || (!imem)) goto error; - if (!subtype->copy(subtype, ptr, imem)) goto error; + if (!subtype->copy(subtype, ptr, imem)) + { + eina_inarray_pop(d->array); + goto error; + } } return EINA_TRUE;