[Bug 54061] New: something wrong in the dbus-tube offerer example

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat Aug 25 21:53:16 CEST 2012


https://bugs.freedesktop.org/show_bug.cgi?id=54061

             Bug #: 54061
           Summary: something wrong in the dbus-tube offerer example
    Classification: Unclassified
           Product: Telepathy
           Version: unspecified
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: tp-glib
        AssignedTo: telepathy-bugs at lists.freedesktop.org
        ReportedBy: chandniverma2112 at gmail.com
         QAContact: telepathy-bugs at lists.freedesktop.org


Can anyone run telepathy-glib/examples/client/dbus-tubes/.libs/offerer
without noticing the following issues:


At sometimes, the offerer fails to create the channel-

Breakpoint 1, channel_created (source=0x8060c18, result=0x805cc40,
user_data=0x0) at offerer.c:155
155      GError *error = NULL;
(gdb) n
159          TP_ACCOUNT_CHANNEL_REQUEST (source), result, NULL, &error);
(gdb) 
158      channel = tp_account_channel_request_create_and_handle_channel_finish
(
(gdb) 
160      if (channel == NULL)
(gdb) 
162          g_debug ("Failed to create channel: %s", error->message);
(gdb) p error->
code     domain   message  
(gdb) p error->message 
$5 = (gchar *) 0x805e3e8 "We are supposed to handle only one channel"


This is happening since the CD is calling HandleChannels of the temporary
handler with more than 1 channel bundle. At other times it works fine. Its a
hit and miss.


Next, everytime I escape the above, I get-

(process:18402): GLib-GObject-WARNING **: invalid cast from `TpChannel' to
`TpDBusTubeChannel'

(process:18402): tp-glib-CRITICAL **: tp_dbus_tube_channel_offer_async:
assertion `TP_IS_DBUS_TUBE_CHANNEL (self)' failed


for the channel the offerer creates to begin with.
This is really wierd since-

1.) The TpDBusTubeChannel gets created!

Breakpoint 1, channel_created (source=0x8060c18, result=0x805cc40,
user_data=0x0) at offerer.c:155
155      GError *error = NULL;
(gdb) n
159          TP_ACCOUNT_CHANNEL_REQUEST (source), result, NULL, &error);
(gdb) 
158      channel = tp_account_channel_request_create_and_handle_channel_finish
(
(gdb) 
160      if (channel == NULL)
(gdb) 
168      g_debug ("Channel created: %s", tp_proxy_get_object_path (channel));
(gdb) 
170      tube = TP_DBUS_TUBE_CHANNEL (channel);
(gdb) 

(process:18426): GLib-GObject-WARNING **: invalid cast from `TpChannel' to
`TpDBusTubeChannel'

Breakpoint 2, channel_created (source=0x8060c18, result=0x805cc40,
user_data=0x0) at offerer.c:172
172      g_signal_connect (tube, "invalidated",
(gdb) 
175      tp_dbus_tube_channel_offer_async (tube, NULL, tube_offered, NULL);
(gdb) p channel
$7 = (TpChannel *) 0x805e8f8


    See   ^ , then;

2.) The created channel object has its object path published on the bus:

(gdb) p tp_proxy_get_object_path (channel)
$8 = (
    const gchar *) 0x806cbf0
"/org/freedesktop/Telepathy/Connection/gabble/jabber/chandniverma2112_40gmail_2ecom_2fd999e8c3/DBusTubeChannel/13/966479375"


3.) And, the channel_type is also as expected!

(gdb) p channel
$10 = (TpChannel *) 0x805e8f8
(gdb) p ($10)->priv->channel_type 
$16 = 344
(gdb) p  g_quark_to_string ( ($10)->priv->channel_type )
$17 = (const gchar *) 0x8056782
"org.freedesktop.Telepathy.Channel.Type.DBusTube"
(gdb) l
170      tube = TP_DBUS_TUBE_CHANNEL (channel);
171    
172      g_signal_connect (tube, "invalidated",
173          G_CALLBACK (tube_invalidated_cb), NULL);
174    
175      tp_dbus_tube_channel_offer_async (tube, NULL, tube_offered, NULL);
176    }
177    
178    int
179    main (int argc,
(gdb) n

(process:18426): tp-glib-CRITICAL **: tp_dbus_tube_channel_offer_async:
assertion `TP_IS_DBUS_TUBE_CHANNEL (self)' failed
176    }
(gdb) n
g_simple_async_result_complete (simple=0x805cc40) at gsimpleasyncresult.c:778
778          g_main_context_pop_thread_default (simple->context);
(gdb) c


There is definitely some deeper set problem requiring a thorough investigation!

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.
You are the assignee for the bug.



More information about the telepathy-bugs mailing list