Bug 40356

Summary: empathy-chat crashed with SIGSEGV in _tp_base_client_handle_channels()
Product: Telepathy Reporter: Cristian Aravena <caravena>
Component: tp-glibAssignee: Telepathy bugs list <telepathy-bugs>
Status: RESOLVED NOTOURBUG QA Contact: Telepathy bugs list <telepathy-bugs>
Severity: normal    
Priority: medium CC: a9016009
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description Cristian Aravena 2011-08-24 08:35:45 UTC
Open bug in launchpad.net:
https://bugs.launchpad.net/bugs/829861

"I'm working with empathy and crash."

#0  _tp_base_client_handle_channels (iface=<optimized out>, account_path=<optimized out>, connection_path=<optimized out>, channels_arr=0x25e0cc0, requests_arr=0x25e0d80, user_action_time=0, handler_info=0x25df5e0, context=0x25e33e0) at base-client.c:2336
        chan_path = 0x25af200 "/org/freedesktop/Telepathy/Connection/idle/irc/username_40chat_2efreenode_2enet0x100c1b0/MucChannel1"
        chan_props = 0x25df580
        self = 0x25d11b0
        ctx = <optimized out>
        cls = <optimized out>
        error = 0x0
        account = 0x25d87a0
        connection = 0x24d0170
        channels = 0x25e0a60
        requests = 0x0
        i = <optimized out>
        channel = 0x0
        account_features = <optimized out>
        connection_features = <optimized out>
        channel_features = <optimized out>
        __PRETTY_FUNCTION__ = "_tp_base_client_handle_channels"
#1  0x00007ffd0ec5b687 in _tp_marshal_VOID__BOXED_BOXED_BOXED_BOXED_UINT64_BOXED_POINTER (closure=0x7fff1a676bd0, return_value=<optimized out>, n_param_values=<optimized out>, param_values=0x25b4400, invocation_hint=<optimized out>, marshal_data=<optimized out>) at _gen/signals-marshal.c:452
        callback = 0x7ffd0ec695b0 <tp_svc_client_handler_handle_channels>
        cc = 0x7fff1a676bd0
        data1 = 0x25d11b0
        data2 = <optimized out>
        __PRETTY_FUNCTION__ = "_tp_marshal_VOID__BOXED_BOXED_BOXED_BOXED_UINT64_BOXED_POINTER"
#2  0x00007ffd0f11d9c2 in invoke_object_method (message=0x25a5f10, connection=0x24ebc40, method=0x7ffd0eee9ca0, object_info=0x7ffd0eee7e00, object=0x25d11b0) at dbus-gobject.c:1744
        had_error = <optimized out>
        value_array = 0x25e0ca0
        result = <optimized out>
        gerror = 0x0
        closure = {ref_count = 0, meta_marshal = 0, n_guards = 0, n_fnotifiers = 0, n_inotifiers = 0, in_inotify = 0, floating = 0, derivative_flag = 0, in_marshal = 0, is_invalid = 0, marshal = 0, data = 0x0, notifiers = 0x0}
        out_param_pos = <optimized out>
        have_retval = 0
        send_reply = <optimized out>
        in_signature = 0x25e07d0 "ooa(oa{sv})aota{sv}"
        out_param_count = <optimized out>
        out_param_gvalue_pos = <optimized out>
        retval_signals_error = 0
        arg_metadata = <optimized out>
        is_async = 1
        out_param_values = 0x0
        return_value = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}
        out_param_gvalues = 0x0
        reply = 0x0
        retval_is_synthetic = 0
        retval_is_constant = 0
#3  object_registration_message (connection=0x24ebc40, message=0x25a5f10, user_data=<optimized out>) at dbus-gobject.c:1968
        pspec = <optimized out>
        object = 0x25d11b0
        setter = <optimized out>
        getter = <optimized out>
        getall = <optimized out>
        s = <optimized out>
        requested_propname = <optimized out>
        wincaps_propiface = <optimized out>
        iter = {dummy1 = 0x7ffd0becf6e0, dummy2 = 0x25d34a0, dummy3 = 39662672, dummy4 = 0, dummy5 = 0, dummy6 = 0, dummy7 = 39532536, dummy8 = 0, dummy9 = 0, dummy10 = 0, dummy11 = 1, pad1 = 0, pad2 = 179713157, pad3 = 0x0}
        method = 0x7ffd0eee9ca0
        object_info = 0x7ffd0eee7e00
        ret = <optimized out>
        o = <optimized out>
#4  0x00007ffd0ab63a81 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
No symbol table info available.
#5  0x00007ffd0ab55980 in dbus_connection_dispatch () from /lib/x86_64-linux-gnu/libdbus-1.so.3
No symbol table info available.
#6  0x00007ffd0f11a395 in message_queue_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at dbus-gmain.c:90
        connection = 0x24ebc40
#7  0x00007ffd0b7c7efd in g_main_dispatch (context=0x24de390) at /build/buildd/glib2.0-2.29.16/./glib/gmain.c:2439
        dispatch = 0x7ffd0f11a380 <message_queue_dispatch>
        was_in_call = 0
        user_data = 0x0
        callback = 0
        cb_funcs = 0x0
        cb_data = 0x0
        current_source_link = {data = 0x25a6cd0, next = 0x0}
        need_destroy = <optimized out>
        source = 0x25a6cd0
        current = 0x2587520
        i = <optimized out>
#8  g_main_context_dispatch (context=0x24de390) at /build/buildd/glib2.0-2.29.16/./glib/gmain.c:3008
No locales.
#9  0x00007ffd0b7c86f8 in g_main_context_iterate (context=0x24de390, block=<optimized out>, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.29.16/./glib/gmain.c:3086
        max_priority = 0
        timeout = 0
        some_ready = 1
        nfds = 5
        allocated_nfds = <optimized out>
        fds = <optimized out>
#10 0x00007ffd0b7c8c32 in g_main_loop_run (loop=0x25a6440) at /build/buildd/glib2.0-2.29.16/./glib/gmain.c:3294
        __PRETTY_FUNCTION__ = "g_main_loop_run"
#11 0x00007ffd0ccf7bfd in gtk_main () at /build/buildd/gtk+3.0-3.1.12/./gtk/gtkmain.c:1367
        loop = 0x25a6440
#12 0x00007ffd0bf6d77e in g_application_run (application=0x259f0c0, argc=<optimized out>, argv=<optimized out>) at /build/buildd/glib2.0-2.29.16/./gio/gapplication.c:1325
        arguments = 0x7ffcf800a920
        status = 0
        i = <optimized out>
        __PRETTY_FUNCTION__ = "g_application_run"
#13 0x00000000004329bb in main (argc=1, argv=0x7fff1a677248) at empathy-chat.c:160
        optcontext = <optimized out>
        options = {{long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}}
        debug_sender = 0x257f4c0
        error = 0x0
        presence_mgr = 0x259f140
        theme_mgr = 0x25b3de0
        retval = <optimized out>
        __PRETTY_FUNCTION__ = "main"
Comment 1 Will Thompson 2011-10-14 05:44:04 UTC
Looking at base-client.c:2336:

2332    channel = ensure_channel (self, connection, chan_path, chan_props,
2333        &error);
2334    if (channel == NULL)
2335      {
2336 →      DEBUG ("Failed to create TpChannel: %s", error->message);
2337        goto out;
2338      }

This plus:

SegvReason: reading NULL VMA

suggests to me that 'error' is NULL, which suggests to me that 'ensure_channel' (or rather, something within it) is hitting g_return_if_fail().

From the .xsession-errors file, a few instances of:

(empathy:26326): empathy-CRITICAL **: empathy_contact_get_account: assertion `EMPATHY_IS_CONTACT (contact)' failed

are the only criticals I see. From ProcStatus.txt:

Pid:	28326

Soooooooo this looks like Empathy is probably at fault here.
Comment 2 Andre Klapper 2019-01-16 22:16:13 UTC
> Soooooooo this looks like Empathy is probably at fault here.

If this is still an issue nowadays, please report to Empathy.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.