summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuilherme Lepsch <lepsch@expertisesolutions.com.br>2015-02-05 15:15:37 +0100
committerCedric BAIL <cedric@osg.samsung.com>2015-02-05 15:37:15 +0100
commitc5c70e54fc9ffd155fbc35d179ec00861bcfe9db (patch)
tree005ba68762bfb7b3eb38c2334c6671c1db9db3bd
parent36515241b9a45436dc2202728904fe00925cd0ae (diff)
eldbus: eina_value not allocated from mempool.
Summary: Eina_Value must be allocated with eina_value_new() to be freed by eina_value_free(). @fix Reviewers: felipealmeida, larryolj, cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D1927 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
-rw-r--r--src/lib/eldbus/eldbus_proxy.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/src/lib/eldbus/eldbus_proxy.c b/src/lib/eldbus/eldbus_proxy.c
index 4d76a56090..f43265a4da 100644
--- a/src/lib/eldbus/eldbus_proxy.c
+++ b/src/lib/eldbus/eldbus_proxy.c
@@ -317,18 +317,15 @@ _property_changed_iter(void *data, const void *key, Eldbus_Message_Iter *var)
317 eina_value_struct_value_get(st_value, "arg0", &stack_value); 317 eina_value_struct_value_get(st_value, "arg0", &stack_value);
318 318
319 value = eina_hash_find(proxy->props, skey); 319 value = eina_hash_find(proxy->props, skey);
320 if (value) 320 if (!value)
321 {
322 eina_value_flush(value);
323 eina_value_copy(&stack_value, value);
324 }
325 else
326 { 321 {
327 value = calloc(1, sizeof(Eina_Value)); 322 value = eina_value_new(eina_value_type_get(&stack_value));
328 eina_value_copy(&stack_value, value);
329 eina_hash_add(proxy->props, skey, value); 323 eina_hash_add(proxy->props, skey, value);
330 } 324 }
331 325
326 eina_value_flush(value);
327 eina_value_copy(&stack_value, value);
328
332 event.name = skey; 329 event.name = skey;
333 event.value = value; 330 event.value = value;
334 event.proxy = proxy; 331 event.proxy = proxy;