From c46a8143916f0d3f66bbdffc7107c97c88df212d Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Wed, 17 Jul 2019 11:12:18 -0700 Subject: [PATCH] eina: set EINA_VALUE_EMPTY during library init. This is a work around compiler/linker limit on some system as reported by Romain Naour. Reviewed-by: Mike Blumenkrantz Differential Revision: https://phab.enlightenment.org/D9348 --- src/lib/eina/eina_value.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c index a2f6f53099..3df0baa329 100644 --- a/src/lib/eina/eina_value.c +++ b/src/lib/eina/eina_value.c @@ -54,7 +54,7 @@ static Eina_Hash *_eina_value_inner_mps = NULL; static Eina_Lock _eina_value_inner_mps_lock; static char *_eina_value_mp_choice = NULL; static int _eina_value_log_dom = -1; -static const Eina_Value _eina_value_empty = EINA_VALUE_EMPTY; +static Eina_Value _eina_value_empty; #ifdef ERR #undef ERR @@ -5400,6 +5400,7 @@ eina_value_inner_free(size_t size, void *mem) Eina_Bool eina_value_init(void) { + const Eina_Value empty = EINA_VALUE_EMPTY; const char *choice, *tmp; _eina_value_log_dom = eina_log_domain_register("eina_value", @@ -5486,6 +5487,8 @@ eina_value_init(void) EINA_ERROR_VALUE_FAILED = eina_error_msg_static_register("Eina_Value failed to copy/convert."); + memcpy(&_eina_value_empty, &empty, sizeof (empty)); + return EINA_TRUE; on_init_fail_hash: