cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=8fbd8bfe2a7dbc88510f03bbc56d3d434b6a259c
commit 8fbd8bfe2a7dbc88510f03bbc56d3d434b6a259c Author: Cedric Bail <[email protected]> Date: Fri Nov 17 10:44:26 2017 -0800 eina: fail with an Eina_Error on copy failure. --- src/lib/eina/eina_inline_value_util.x | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/lib/eina/eina_inline_value_util.x b/src/lib/eina/eina_inline_value_util.x index 010465545f..c2d293e1e1 100644 --- a/src/lib/eina/eina_inline_value_util.x +++ b/src/lib/eina/eina_inline_value_util.x @@ -990,7 +990,11 @@ eina_value_dup(const Eina_Value *val) v = eina_value_new(eina_value_type_get(val)); EINA_SAFETY_ON_NULL_RETURN_VAL(v, NULL); - eina_value_copy(val, v); + if (!eina_value_copy(val, v)) + { + eina_value_setup(v, EINA_VALUE_TYPE_ERROR); + eina_value_set(v, EINA_ERROR_VALUE_FAILED); + } return v; } @@ -1005,8 +1009,12 @@ eina_value_reference_copy(const Eina_Value *val) { Eina_Value v = EINA_VALUE_EMPTY; - eina_value_setup(&v, eina_value_type_get(val)); - eina_value_copy(val, &v); + if (!eina_value_setup(&v, eina_value_type_get(val)) || + !eina_value_copy(val, &v)) + { + eina_value_setup(&v, EINA_VALUE_TYPE_ERROR); + eina_value_set(&v, EINA_ERROR_VALUE_FAILED); + } return v; } --
