From 73eb758f6521adf3fb6dee1a164601961a0c5ccc Mon Sep 17 00:00:00 2001 From: barbieri Date: Wed, 11 Jan 2012 21:34:49 +0000 Subject: [PATCH] eina_value: fix error condition handling. git-svn-id: http://svn.enlightenment.org/svn/e/trunk/eina@67094 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- src/lib/eina_value.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/eina_value.c b/src/lib/eina_value.c index c5b34d2..6c9392f 100644 --- a/src/lib/eina_value.c +++ b/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; -- 2.7.4