Signals need to be sent with edbus_service_signal_emit() -- for basic
messages -- or edbus_service_signal_new() + edbus_service_signal_send --
for complex messages. Otherwise it's possible to send signals that are
not in the service introspection or that have different signatures by
mistake/typo.
SVN revision: 81311
having the same argument names in a D-Bus signal/method is the equivalent
in C to have a function with this signature:
int my_func(int a, int a, int a, int a);
Don't.
SVN revision: 81309
Rename these functions since they do not set the data in the
iterator/message but rather they append the data.
Also improve the documentation of edbus_message_iter_arguments_append()
to clarify its usage.
SVN revision: 81295
_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
ephysics tests need edje which needs ephysics.
The issue was rename of ephysics_soft_body_circle_add ->
ephysics_body_cylinder_add
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
SVN revision: 80749
On the one hand this also should have test coverage. On the other hand we
don't want to expose this as an public API. Disable for now so we don't
fail with -fvisibility=hidden.
SVN revision: 80743
For sake of consistency moving soft_circle to soft_cylinder and
soft_ellipsoid becomes soft_sphere. Their face identification were
moved as well. The faces identifications were also unified.
SVN revision: 80720
This patch fixes the forces apply, the current implementation will
never apply it. We're also applying rate twice, get rid of rate on
forces_apply function.
SVN revision: 80719
This allows to monitor when a client exits. Clients in general don't
register a name in the bus and in some cases it's even not allowed to do
(for example an agent talking to bluetoothd, that runs in system bus).
Patch by: José Roberto de Souza <zehortigoza@profusion.mobi>
SVN revision: 80687
Refactor edbus_signal_handler_add() so internal signal handlers don't
set the connection free callback. This fixes the bug in which
EDBus_Connection was freeing the signal handler of EDBus_Conenction_Name
==22814== Invalid read of size 4
==22814== at 0x40564B0: edbus_signal_handler_del (edbus_signal_handler.c:278)
==22814== by 0x4040E65: _edbus_connection_name_unref (edbus_core.c:507)
==22814== by 0x404106B: edbus_connection_name_owner_monitor (edbus_core.c:520)
==22814== by 0x4055F63: _edbus_signal_handler_clean (edbus_signal_handler.c:217)
==22814== by 0x40564F8: edbus_signal_handler_del (edbus_signal_handler.c:279)
==22814== by 0x4043088: _edbus_connection_unref (edbus_core.c:1045)
==22814== by 0x404352F: edbus_connection_unref (edbus_core.c:1105)
==22814== by 0x80498AA: main (banshee.c:233)
==22814== Address 0x44bea48 is 0 bytes inside a block of size 72 free'd
==22814== at 0x402C06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==22814== by 0x4056118: _edbus_signal_handler_del (edbus_signal_handler.c:249)
==22814== by 0x4056401: edbus_signal_handler_unref (edbus_signal_handler.c:272)
==22814== by 0x4056503: edbus_signal_handler_del (edbus_signal_handler.c:280)
==22814== by 0x4043088: _edbus_connection_unref (edbus_core.c:1045)
==22814== by 0x404352F: edbus_connection_unref (edbus_core.c:1105)
==22814== by 0x80498AA: main (banshee.c:233)
==22814==
CRI<22814>: src/lib/edbus_signal_handler.c:278 edbus_signal_handler_del() *** Eina Magic Check Failed !!!
Input handle has already been freed!
*** NAUGHTY PROGRAMMER!!!
*** SPANK SPANK SPANK!!!
*** Now go fix your code. Tut tut tut!
Patch by: José Roberto de Souza <zehortigoza@profusion.mobi>
SVN revision: 80686