sending a variant problem

ivan fernandez calvo ivan.fernandez at sacnet.es
Fri Apr 11 10:06:11 PDT 2008


I have this method definition 
<method name="getState">
 <arg type="u" name="nData" direction="in" />
 <arg type="v" name="vValue" direction="out" />
</method>

I make the binding

dbus-binding-tool --mode=glib-server --prefix=messageDBus
--output=messageDBus_server.h

and implement the method

gboolean messageDBus_get_State (
	MessageDBusServidor *obj, 
	const guint IN_nData, 
	GValue* OUT_vValue, 
	GError **error) 
{
 GValue *pnData = g_try_new0(GValue,1);
 g_value_init (pnData,G_TYPE_INT);
 g_value_set_int (pnData,IN_nData);
 OUT_vValor = pnData;
 return TRUE;
}


I use D-Feet D-Bus debugger to call the method over DBus , if i put a
breakpoint over the return stament i see that the method is called again
and again and throw the stdout show this message

(process:15478): GLib-GObject-CRITICAL **: g_type_get_qdata: assertion `node != NULL' failed
(process:15478): GLib-GObject-CRITICAL **: g_type_get_qdata: assertion `node != NULL' failed
(process:15478): GLib-GObject-CRITICAL **: g_type_get_qdata: assertion `node != NULL' failed
(process:15478): GLib-GObject-CRITICAL **: g_type_get_qdata: assertion `node != NULL' failed
** (process:15478): WARNING **: Cannot marshal type "(null)" in variant

this is show each time that the method is call , it never end to call the method.
I am use debian testing and the version od DBus is 1.1.20-1

What kind of problem could be causing this?


-- 
Un Saludo
Ivan Fernandez Calvo



More information about the dbus mailing list