_object_unregister is called synchronized by libdbus, so when _interface_free() ran
your object its already freed.
==30579== Invalid read of size 4
==30579== at 0x4775190: _find_object_manager_parent (edbus_service.c:803)
==30579== by 0x4775292: _interface_free (edbus_service.c:1011)
==30579== by 0x4777F1D: edbus_service_interface_unregister (edbus_service.c:1101)
==30579== by 0x40CBD28: elm_dbus_menu_delete (elm_dbus_menu.c:128)
==30579== by 0x414552F: _elm_menu_smart_del (elm_menu.c:562)
==30579== by 0x4810F39: _eo_op_internal (eo.c:363)
==30579== by 0x4812E1B: eo_do_internal (eo.c:403)
==30579== by 0x4279D02: evas_object_smart_del (evas_object_smart.c:1080)
Patch by: José Roberto de Souza <zehortigoza@profusion.mobi>
SVN revision: 81180
Keep expected values in a struct. It would be ideal to have all values
and compare functions in an array, so we would be able to set the same
callback function for all methods. But it's already short enough so keep
it as is.
The usage of eina_log here allows us to easily catch which test failed.
SVN revision: 81173
If user passed a string with more elements, return EINA_FALSE on
edbus_message_arguments_get() so he knows not all elements are
initialized. Before this patch, we would notify user of its error if he
did something like:
i) edbus_message_arguments_get(msg, "uu", &a)
ii) edbus_message_arguments_get(msg, "uu", &a, &b)
And "msg" containing only 1 argument.
This also fixes the case in which user is getting the elements of an
array iterator and the array is empty. We were previously returning
EINA_TRUE, even if we were not filling the variable.
Last but not least, if the user was calling
edbus_message_iter_arguments_get() in an empty array, we would return
EINA_FALSE, even if we didn't actually get any element.
SVN revision: 81170
we are only interested in the first char of the signature so we can use
dbus_signature_iter_get_current_type and:
a) avoid the allocation of the signature for each complete type
b) simplify the check for struct and dict, since *_get_current_type()
does TheRightThing (TM)
This also rename some variables to clarify the new semantics:
iter_type -> iter
sig_type -> sig_iter
SVN revision: 81169
find . -name '*.h' -exec \
sed -i '/^\s*$/b; N; /\n\/\*\*/{P;x;p;x;D}' {} \;
This ensures to add a blank line above a doxygen comment if and only if
there wasn't one.
SVN revision: 80962
And update doxyfile
It's a more reasonable name for this directory,
since now it won't build a dir, just a few files
used to exemplify ephysics usage on docs.
SVN revision: 80897