empathy crashes when clicking 'Profile' in 'previous chats' for an irc channel
@hussam
Submitted by Hussam Al-Tayeb Link to original bug (#764229)
Description
This is an odd bug than not many will notice. Open Previous chats. Click on the irc channel #gnome. Click the Profile button. Empathy crashes. In reality, the Profile button show be greyed out for channels. It should only work for actual contacts (clicking Profile for contacts open gnome-contacts)
(empathy:11083): telepathy-CRITICAL **: tpf_persona_dup_for_contact: assertion 'contact != NULL' failed
(empathy:11083): tp-glib-CRITICAL **: tp_contact_get_identifier: assertion 'self != NULL' failed
(empathy:11083): folks-CRITICAL **: folks_individual_get_id: assertion 'self != NULL' failed
Thread 1 "empathy" received signal SIGSEGV, Segmentation fault. g_str_hash (v=0x0) at ghash.c:1876 1876 ghash.c: No such file or directory.
(gdb) bt
#0 g_str_hash (v=0x0) at ghash.c:1876
#1 0x00007ffff53deb23 in g_hash_table_lookup_node (hash_return=<synthetic pointer>, key=0x0,
hash_table=0xd514c0) at ghash.c:375
#2 g_hash_table_lookup (hash_table=0xd514c0, key=0x0) at ghash.c:1147
#3 0x00007ffff7b4ae64 in empathy_display_individual_info ()
from /usr/lib/empathy/libempathy-gtk-3.12.11.20160307.so
#4 0x00007ffff7b5e41b in ?? () from /usr/lib/empathy/libempathy-gtk-3.12.11.20160307.so
#5 0x00007ffff56c61d4 in _g_closure_invoke_va (closure=closure@entry=0x1180a20,
return_value=return_value@entry=0x0, instance=instance@entry=0x104f240, args=args@entry=0x7fffffffcd58,
n_params=<optimized out>, param_types=0x0) at gclosure.c:867
#6 0x00007ffff56e09d6 in g_signal_emit_valist (instance=instance@entry=0x104f240,
signal_id=signal_id@entry=487, detail=detail@entry=0, var_args=var_args@entry=0x7fffffffcd58)
at gsignal.c:3294
#7 0x00007ffff56e1585 in g_signal_emit_by_name (instance=0x104f240,
detailed_signal=0x7ffff65aeabe "clicked") at gsignal.c:3481
#8 0x00007ffff56c61d4 in _g_closure_invoke_va (closure=closure@entry=0x1178590,
return_value=return_value@entry=0x0, instance=instance@entry=0xf4f1c0, args=args@entry=0x7fffffffd0a0,
n_params=<optimized out>, param_types=0x0) at gclosure.c:867
#9 0x00007ffff56e09d6 in g_signal_emit_valist (instance=0xf4f1c0, signal_id=<optimized out>, detail=0,
---Type <return> to continue, or q <return> to quit---
var_args=var_args@entry=0x7fffffffd0a0) at gsignal.c:3294
#10 0x00007ffff56e10bf in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>,
detail=<optimized out>) at gsignal.c:3441
#11 0x00007ffff62d7a0d in gtk_button_do_release (button=0xf4f1c0, emit_clicked=<optimized out>)
at gtkbutton.c:1843
#12 0x00007ffff62d7a75 in gtk_real_button_released (button=0xf4f1c0) at gtkbutton.c:1961
#13 0x00007ffff56c5fa5 in g_closure_invoke (closure=closure@entry=0x7d1af0,
return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffd3a0,
invocation_hint=invocation_hint@entry=0x7fffffffd320) at gclosure.c:804
#14 0x00007ffff56d7b2c in signal_emit_unlocked_R (node=node@entry=0x751b90, detail=detail@entry=0,
instance=instance@entry=0xf4f1c0, emission_return=emission_return@entry=0x0,
instance_and_params=instance_and_params@entry=0x7fffffffd3a0) at gsignal.c:3559
#15 0x00007ffff56e0d8c in g_signal_emit_valist (instance=<optimized out>, signal_id=<optimized out>,
detail=<optimized out>, var_args=var_args@entry=0x7fffffffd550) at gsignal.c:3385
#16 0x00007ffff56e10bf in g_signal_emit (instance=instance@entry=0xf4f1c0, signal_id=<optimized out>,
detail=detail@entry=0) at gsignal.c:3441
#17 0x00007ffff62d5e60 in multipress_released_cb (gesture=0x10b36d0, n_press=<optimized out>,
x=<optimized out>, y=<optimized out>, widget=0xf4f1c0) at gtkbutton.c:666
#18 0x00007fffeab68150 in ffi_call_unix64 () from /usr/lib/libffi.so.6
---Type <return> to continue, or q <return> to quit---
#19 0x00007fffeab67bbb in ffi_call () from /usr/lib/libffi.so.6
#20 0x00007ffff56c6cf5 in g_cclosure_marshal_generic_va (closure=0x11783b0, return_value=0x0,
instance=0x10b36d0, args_list=<optimized out>, marshal_data=0x0, n_params=3, param_types=0xceaf00)
at gclosure.c:1604
#21 0x00007ffff56c61d4 in _g_closure_invoke_va (closure=closure@entry=0x11783b0,
return_value=return_value@entry=0x0, instance=instance@entry=0x10b36d0, args=args@entry=0x7fffffffdb30,
n_params=<optimized out>, param_types=0xceaf00) at gclosure.c:867
#22 0x00007ffff56e09d6 in g_signal_emit_valist (instance=0x10b36d0, signal_id=<optimized out>, detail=0,
var_args=var_args@entry=0x7fffffffdb30) at gsignal.c:3294
#23 0x00007ffff56e10bf in g_signal_emit (instance=instance@entry=0x10b36d0, signal_id=<optimized out>,
detail=detail@entry=0) at gsignal.c:3441
#24 0x00007ffff638bca1 in gtk_gesture_multi_press_end (gesture=0x10b36d0, sequence=<optimized out>)
at gtkgesturemultipress.c:282
#25 0x00007ffff56c8dbe in g_cclosure_marshal_VOID__BOXEDv (closure=0xcde830, return_value=<optimized out>,
instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>,
param_types=0xcde860) at gmarshal.c:1950
#26 0x00007ffff56c61d4 in _g_closure_invoke_va (closure=closure@entry=0xcde830,
return_value=return_value@entry=0x0, instance=instance@entry=0x10b36d0, args=args@entry=0x7fffffffdec0,
n_params=<optimized out>, param_types=0xcde860) at gclosure.c:867
---Type <return> to continue, or q <return> to quit---
#27 0x00007ffff56e09d6 in g_signal_emit_valist (instance=0x10b36d0, signal_id=<optimized out>, detail=0,
var_args=var_args@entry=0x7fffffffdec0) at gsignal.c:3294
#28 0x00007ffff56e10bf in g_signal_emit (instance=instance@entry=0x10b36d0, signal_id=<optimized out>,
detail=detail@entry=0) at gsignal.c:3441
#29 0x00007ffff6388ffe in _gtk_gesture_set_recognized (sequence=0x0, recognized=0, gesture=0x10b36d0)
at gtkgesture.c:345
#30 _gtk_gesture_check_recognized (gesture=gesture@entry=0x10b36d0, sequence=sequence@entry=0x0)
at gtkgesture.c:386
#31 0x00007ffff638a63b in gtk_gesture_handle_event (controller=0x10b36d0, event=0xeff3f0)
at gtkgesture.c:777
#32 0x00007ffff638d225 in gtk_gesture_single_handle_event (controller=0x10b36d0, event=0xeff3f0)
at gtkgesturesingle.c:221
#33 0x00007ffff635ce3b in gtk_event_controller_handle_event (controller=0x10b36d0,
event=event@entry=0xeff3f0) at gtkeventcontroller.c:230
#34 0x00007ffff6513d1b in _gtk_widget_run_controllers (widget=0xf4f1c0, event=0xeff3f0,
phase=GTK_PHASE_BUBBLE) at gtkwidget.c:7328
#35 0x00007ffff63d31da in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x6b1620, return_value=0x7fffffffe250,
instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>,
param_types=0x686810) at gtkmarshalers.c:131
---Type <return> to continue, or q <return> to quit---
#36 0x00007ffff56c61d4 in _g_closure_invoke_va (closure=closure@entry=0x6b1620,
return_value=return_value@entry=0x7fffffffe250, instance=instance@entry=0xf4f1c0,
args=args@entry=0x7fffffffe320, n_params=<optimized out>, param_types=0x686810) at gclosure.c:867
#37 0x00007ffff56e04e8 in g_signal_emit_valist (instance=0xf4f1c0, signal_id=<optimized out>, detail=0,
var_args=var_args@entry=0x7fffffffe320) at gsignal.c:3294
#38 0x00007ffff56e10bf in g_signal_emit (instance=instance@entry=0xf4f1c0, signal_id=<optimized out>,
detail=detail@entry=0) at gsignal.c:3441
#39 0x00007ffff6515e9c in gtk_widget_event_internal (widget=0xf4f1c0, event=0xeff3f0) at gtkwidget.c:7703
#40 0x00007ffff63d045e in propagate_event_up (topmost=<optimized out>, event=<optimized out>,
widget=0xf4f1c0) at gtkmain.c:2542
#41 propagate_event (widget=<optimized out>, event=0xeff3f0, captured=<optimized out>, topmost=0x0)
at gtkmain.c:2644
#42 0x00007ffff63d22ec in gtk_main_do_event (event=0xeff3f0) at gtkmain.c:1875
#43 0x00007ffff5b84625 in _gdk_event_emit (event=event@entry=0xeff3f0) at gdkevents.c:73
#44 0x00007ffff5bb1492 in gdk_event_source_dispatch (source=<optimized out>, callback=<optimized out>,
user_data=<optimized out>) at gdkeventsource.c:369
#45 0x00007ffff53eff07 in g_main_dispatch (context=0x6b68f0) at gmain.c:3154
#46 g_main_context_dispatch (context=context@entry=0x6b68f0) at gmain.c:3769
#47 0x00007ffff53f0160 in g_main_context_iterate (context=context@entry=0x6b68f0, block=block@entry=1,
---Type <return> to continue, or q <return> to quit---
dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#48 0x00007ffff53f020c in g_main_context_iteration (context=context@entry=0x6b68f0,
may_block=may_block@entry=1) at gmain.c:3901
#49 0x00007ffff5ed8afd in g_application_run (application=0x69e290, argc=1, argv=0x7fffffffe7a8)
at gapplication.c:2381
#50 0x000000000041781d in main ()
Version: 3.12.x