Hi,<br><div class="gmail_quote"><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>
  I can send a struct through a signal with the help of some members of<br>
the list, now i have another question, how can i get this struct when<br>
reveice get this signal?</blockquote><div><br>-- Well its a bit complicated with the low level apis, I mean you need to attach a iterator with the message, and then recurse through the arguments to get the value.i.e if in the message you have a struct of string and int as s(su) then i will be like:<br>
 dbus_message_iter_init(message, &amp;iter);<br> dbus_message_iter_recurse(&amp;iter, &amp;iter1); /* To go inside the struct */<br> while (dbus_message_iter_get_arg_type(&amp;iter1) != DBUS_TYPE_INVALID) {<br>   dbus_message_iter_get_basic(iter, &amp;value);<br>
   dbus_message_iter_next(iter);<br>}<br><br>-- Hope this will give you some idea..<br><br>-Br<br>Naveen<br><br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>
<br>
Brenno<br>
<br>
Em Qua, 2009-02-18 ŕs 19:21 -0500, Havoc Pennington escreveu:<br>
&gt; Hi,<br>
&gt;<br>
&gt; On Wed, Feb 18, 2009 at 1:08 PM, Brenno Freire &lt;<a href="mailto:brenno.freire@fucapi.br">brenno.freire@fucapi.br</a>&gt; wrote:<br>
&gt; &gt; Got the following error. &quot; arguments to dbus_message_iter_append_basic()<br>
&gt; &gt; were incorrect, assertion &quot;dbus_type_is_basic (type)&quot; failed in file<br>
&gt; &gt; dbus-message.c line 2241.<br>
&gt; &gt; This is normally a bug in some application using the D-Bus library.<br>
&gt; &gt;  D-Bus not built with -rdynamic so unable to print a backtrace<br>
&gt; &gt; &quot;<br>
&gt; &gt; You could guide me?<br>
&gt;<br>
&gt; There is a bug in your application which is that DBUS_TYPE_STRUCT is<br>
&gt; not dbus_type_is_basic().<br>
&gt; The documentation for dbus_message_iter_append_basic() should explain.<br>
&gt; You need to use dbus_message_iter_open_container() to open the struct<br>
&gt; then append each struct field individually.<br>
&gt;<br>
&gt; Havoc<br>
&gt;<br>
&gt; !DSPAM:499ca621106241690948120!<br>
&gt;<br>
&gt;<br>
<br>
_______________________________________________<br>
dbus mailing list<br>
<a href="mailto:dbus@lists.freedesktop.org">dbus@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/dbus" target="_blank">http://lists.freedesktop.org/mailman/listinfo/dbus</a><br>
</blockquote></div><br>