Bug 1123549

Summary: [abrt] empathy: gtk_widget_size_allocate_with_baseline(): empathy killed by SIGSEGV
Product: [Fedora] Fedora Reporter: Nicolas Mailhot <nicolas.mailhot>
Component: empathyAssignee: Brian Pepple <bdpepple>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 21CC: accounts+fedora, bdpepple, bugs.michael, diogocamposwd, elad, ignatenko, matteo, robatino, sven, uraeus, vondruch, vrutkovs
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/8df0170fb39e675eaabbdef387c3fe02f61b26a9
Whiteboard: abrt_hash:97340dad7cb9c22f7f220bb54f848a8cfafd55b6
Fixed In Version: empathy-3.12.5-1.fc22.x86_64, empathy-3.12.5-1.fc21.x86_64 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-27 17:56:22 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1043129    
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: exploitable
none
File: limits
none
File: maps
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages none

Description Nicolas Mailhot 2014-07-26 07:02:00 UTC
Version-Release number of selected component:
empathy-3.12.4-1.fc21

Additional info:
reporter:       libreport-2.2.3
backtrace_rating: 4
cmdline:        empathy
crash_function: gtk_widget_size_allocate_with_baseline
executable:     /usr/bin/empathy
kernel:         3.16.0-0.rc6.git2.1.fc21.x86_64
runlevel:       1 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (10 frames)
 #0 gtk_widget_size_allocate_with_baseline at /lib64/libgtk-3.so.0
 #1 gtk_combo_box_size_allocate at /lib64/libgtk-3.so.0
 #2 g_cclosure_marshal_VOID__BOXEDv at /lib64/libgobject-2.0.so.0
 #3 _g_closure_invoke_va at /lib64/libgobject-2.0.so.0
 #6 gtk_widget_size_allocate_with_baseline at /lib64/libgtk-3.so.0
 #7 gtk_box_size_allocate_no_center at /lib64/libgtk-3.so.0
 #8 g_cclosure_marshal_VOID__BOXEDv at /lib64/libgobject-2.0.so.0
 #9 _g_closure_invoke_va at /lib64/libgobject-2.0.so.0
 #12 gtk_widget_size_allocate_with_baseline at /lib64/libgtk-3.so.0
 #13 gtk_box_size_allocate_no_center at /lib64/libgtk-3.so.0

Comment 1 Nicolas Mailhot 2014-07-26 07:02:03 UTC
Created attachment 921124 [details]
File: backtrace

Comment 2 Nicolas Mailhot 2014-07-26 07:02:04 UTC
Created attachment 921125 [details]
File: cgroup

Comment 3 Nicolas Mailhot 2014-07-26 07:02:06 UTC
Created attachment 921126 [details]
File: core_backtrace

Comment 4 Nicolas Mailhot 2014-07-26 07:02:07 UTC
Created attachment 921127 [details]
File: dso_list

Comment 5 Nicolas Mailhot 2014-07-26 07:02:08 UTC
Created attachment 921128 [details]
File: environ

Comment 6 Nicolas Mailhot 2014-07-26 07:02:09 UTC
Created attachment 921129 [details]
File: exploitable

Comment 7 Nicolas Mailhot 2014-07-26 07:02:10 UTC
Created attachment 921130 [details]
File: limits

Comment 8 Nicolas Mailhot 2014-07-26 07:02:13 UTC
Created attachment 921131 [details]
File: maps

Comment 9 Nicolas Mailhot 2014-07-26 07:02:14 UTC
Created attachment 921132 [details]
File: open_fds

Comment 10 Nicolas Mailhot 2014-07-26 07:02:15 UTC
Created attachment 921133 [details]
File: proc_pid_status

Comment 11 Nicolas Mailhot 2014-07-26 07:02:16 UTC
Created attachment 921134 [details]
File: var_log_messages

Comment 12 Matteo Settenvini 2014-08-11 20:21:57 UTC
Happens at each startup for me: Empathy is completely unusable.
I believe this should be raised in severity.

Comment 13 Matteo Settenvini 2014-08-12 22:22:27 UTC
Looks like EmpathyPresenceChooser has no button nor child widget set:

(gdb) f 2
#2  0x0000003faad431ca in gtk_combo_box_size_allocate (widget=0xa6a360 [EmpathyPresenceChooser], allocation=0x7fffffffc760) at gtkcombobox.c:2701
2701	          GTK_COMBO_BOX_SIZE_ALLOCATE_BUTTON

(gdb) list
2696	          /* menu mode; child_widget has been set with gtk_container_add().
2697	           * E.g. it might be a GtkEntry if priv->has_entry is TRUE.
2698	           * Allocate the button at the far end, according to the direction
2699	           * of the widget.
2700	           */
2701	          GTK_COMBO_BOX_SIZE_ALLOCATE_BUTTON

(gdb) p priv->button
$13 = 0x0

(gdb) p gtk_bin_get_child (widget)
$7 = 0x0

But the button is created in gtk_combo_box_menu_setup, so I put a breakpoint there... which is never hit before the SIGSEGV. Therefore, I tried directly breaking in gtk_combo_box_check_appearance, which is called inside the GtkComboBox constructor... and nothing.

Therefore, I am wondering under which circumstances EmpathyPresenceChooser does not invoke its parent GtkComboBox constructor before triggering a size allocation.

By the way, shouldn't presence_chooser_constructed chain to the parent constructed member? Should not matter for this specific bug, but looks wrong to me.

Comment 14 Vít Ondruch 2014-08-16 09:15:50 UTC
I reported the bug upstream. It seems it just rotting here :/

Comment 15 Vít Ondruch 2014-08-16 21:58:02 UTC
Here [1] is the scratch build with patch from [2], which fixes the issue.

[1] http://koji.fedoraproject.org/koji/taskinfo?taskID=7346003
[2] https://bugzilla.gnome.org/show_bug.cgi?id=732909

Comment 16 Matteo Settenvini 2014-08-17 07:22:13 UTC
Thanks Vít, the build you provided fixes the problem for me!

Comment 17 Sven Lankes 2014-08-18 08:20:45 UTC
Same here - the scratch-build fixes the crash for me as well.

Comment 18 Elad Alfassa 2014-08-19 10:19:02 UTC
Nominating as Fedora 21 Final blocker.
Criteria: "All applications that can be launched using the standard graphical mechanism of a release-blocking desktop after a default installation of that desktop must start successfully and withstand a basic functionality test. "

https://fedoraproject.org/wiki/Fedora_21_Final_Release_Criteria#Default_application_functionality

Comment 19 Vadim Rutkovsky 2014-08-22 11:39:16 UTC
This crash doesn't seem to happen for me after updating to empathy-3.12.5-1.fc21.x86_64

Comment 20 Vít Ondruch 2014-08-27 17:56:22 UTC
empathy-3.12.5-1.fc22.x86_64 seems to fix this issue for me as well.