Bug 1285960 - Evolution segfaults on start under Gnome3/Wayland when an account error message is displayed
Evolution segfaults on start under Gnome3/Wayland when an account error messa...
Status: CLOSED UPSTREAM
Product: Fedora
Classification: Fedora
Component: evolution (Show other bugs)
23
x86_64 Linux
unspecified Severity high
: ---
: ---
Assigned To: Milan Crha
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-26 23:56 EST by Matt Hirsch
Modified: 2015-11-27 01:42 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-11-27 01:42:44 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
GNOME Bugzilla 758713 None None None Never

  None (edit)
Description Matt Hirsch 2015-11-26 23:56:53 EST
Description of problem:

I just updated a machine from f22 to f23 and decided to try gnome3 under wayland. I opened evolution, which seems to work fine under gnome3 in Xorg and it segfaults immediately on start.

Version-Release number of selected component (if applicable):
evolution-3.18.2-1.fc23.x86_64

How reproducible:
This is happening every time evolution is opened on one user account. On another account it happened at first, and not on subsequent openings.

Steps to Reproduce:
1. Login to Gnome3/Wayland by selecting it in gdm
2. Open Evolution

Actual results:

Segmentation Fault

Expected results:

Able to use evolution email normally.

Additional info:

I installed the debuginfo package for evolution. Here is a backtrace:

(gdb) run
Starting program: /usr/bin/evolution 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffd798a700 (LWP 10737)]
[New Thread 0x7fffd7189700 (LWP 10738)]
[New Thread 0x7fffd6988700 (LWP 10739)]
[New Thread 0x7fffd5952700 (LWP 10742)]
[New Thread 0x7fffc4a71700 (LWP 10744)]
[New Thread 0x7fff7fffd700 (LWP 10745)]
Detaching after fork from child process 10748.
[New Thread 0x7fff755fe700 (LWP 10755)]
[New Thread 0x7fff74a86700 (LWP 10760)]
[New Thread 0x7fff6ffff700 (LWP 10761)]
[New Thread 0x7fff6f7fe700 (LWP 10763)]
[New Thread 0x7fff6effd700 (LWP 10764)]
[New Thread 0x7fff6e7fc700 (LWP 10765)]
[New Thread 0x7fff6dffb700 (LWP 10766)]
[New Thread 0x7fff6d7fa700 (LWP 10767)]
[New Thread 0x7fff6cff9700 (LWP 10768)]
[Thread 0x7fff74a86700 (LWP 10760) exited]
[Thread 0x7fff6cff9700 (LWP 10768) exited]
No bp log location saved, using default.
[000:000] Cpu: 16.6.3, x1, 2800Mhz, 3700MB
[000:001] Computer model: Not available
[000:001] Browser XEmbed support present: 1
[000:001] Browser toolkit is Gtk2.
[000:429] Using Gtk2 toolkit
Detaching after fork from child process 10777.
[New Thread 0x7fff6cff9700 (LWP 10779)]
[New Thread 0x7fff74a86700 (LWP 10780)]
[New Thread 0x7fff634d8700 (LWP 10781)]
No bp log location saved, using default.
[000:000] Cpu: 16.6.3, x1, 2800Mhz, 3700MB
[000:001] Computer model: Not available
[000:326] Warning(optionsfile.cc:30): Load: Could not open file, err=2
[000:326] No bp log location saved, using default.
[000:326] Cpu: 16.6.3, x1, 2800Mhz, 3700MB
[000:327] Computer model: Not available
[001:021] Warning(optionsfile.cc:30): Load: Could not open file, err=2
[001:021] No bp log location saved, using default.
[001:021] Cpu: 16.6.3, x1, 2800Mhz, 3700MB
[001:022] Computer model: Not available
[001:022] Browser XEmbed support present: 1
[001:022] Browser toolkit is Gtk2.
[001:022] Using Gtk2 toolkit

** (evolution:10724): WARNING **: Accelerated compositing is not supported under Wayland displays, disabling.
openjdk version "1.8.0_65"
OpenJDK Runtime Environment (build 1.8.0_65-b17)
OpenJDK 64-Bit Server VM (build 25.65-b01, mixed mode)
[New Thread 0x7fff60f04700 (LWP 10793)]
[New Thread 0x7fff60703700 (LWP 10794)]
[New Thread 0x7fff5ff02700 (LWP 10795)]
[Thread 0x7fff6d7fa700 (LWP 10767) exited]
[New Thread 0x7fff6d7fa700 (LWP 10801)]
[New Thread 0x7fff5daa1700 (LWP 10805)]
[Thread 0x7fff6effd700 (LWP 10764) exited]
[Thread 0x7fff6d7fa700 (LWP 10801) exited]
[Thread 0x7fff60703700 (LWP 10794) exited]

Program received signal SIGSEGV, Segmentation fault.
gdk_wayland_selection_request_target (wayland_selection=wayland_selection@entry=0x5555557b95a0, 
    window=window@entry=0x7fffc008b450 [GdkWaylandWindow], target=0x1f, fd=fd@entry=35)
    at gdkselection-wayland.c:684
684	  offer->requested_target = target;
(gdb) bt
#0  0x00007fffeec66abc in gdk_wayland_selection_request_target (wayland_selection=wayland_selection@entry=0x5555557b95a0, window=window@entry=0x7fffc008b450 [GdkWaylandWindow], target=0x1f, fd=fd@entry=35)
    at gdkselection-wayland.c:684
#1  0x00007fffeec6702c in data_source_send (data=0x5555557b95a0, source=<optimized out>, mime_type=0x555558e594ec "STRING", fd=35) at gdkselection-wayland.c:778
#2  0x00007fffe8d07d30 in ffi_call_unix64 () at /lib64/libffi.so.6
#3  0x00007fffe8d0779b in ffi_call () at /lib64/libffi.so.6
#4  0x00007fffe3b755e8 in wl_closure_invoke () at /lib64/libwayland-client.so.0
#5  0x00007fffe3b728f0 in dispatch_event.isra () at /lib64/libwayland-client.so.0
#6  0x00007fffe3b7296c in dispatch_queue () at /lib64/libwayland-client.so.0
#7  0x00007fffe3b7363f in wl_display_dispatch_queue () at /lib64/libwayland-client.so.0
#8  0x00007fffeec6382c in _gdk_wayland_display_queue_events (display=<optimized out>)
    at gdkeventsource.c:165
#9  0x00007fffeec11fd9 in gdk_display_get_event (display=0x555555789000 [GdkWaylandDisplay])
    at gdkdisplay.c:340
#10 0x00007fffeec635d2 in gdk_event_source_dispatch (base=<optimized out>, callback=<optimized out>, data=<optimized out>) at gdkeventsource.c:86
#11 0x00007fffed54fe3a in g_main_context_dispatch (context=0x555555781d70) at gmain.c:3154
#12 0x00007fffed54fe3a in g_main_context_dispatch (context=context@entry=0x555555781d70) at gmain.c:3769
#13 0x00007fffed5501d0 in g_main_context_iterate (context=0x555555781d70, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3840
#14 0x00007fffed5504f2 in g_main_loop_run (loop=0x55555891d7f0) at gmain.c:4034
#15 0x00007fffef0c5385 in gtk_main () at gtkmain.c:1241
#16 0x0000555555557f7f in main (argc=1, argv=0x7fffffffe208) at main.c:654
(gdb) list
679	   */
680	  if (wayland_selection->stored_selection.fd >= 0)
681	    close (wayland_selection->stored_selection.fd);
682	
683	  wayland_selection->stored_selection.fd = fd;
684	  offer->requested_target = target;
685	
686	  if (window &&
687	      gdk_wayland_selection_source_handles_target (wayland_selection, target))
688	    {
(gdb) print offer
$1 = (DataOfferData *) 0x0
Comment 1 Matt Hirsch 2015-11-27 00:05:15 EST
I discovered a strong clue as to the source of the problem. This only seems to occur when an account error message is displayed at the top of the evolution screen. For example, I had my gmail account set up through the gnome3 "online accounts" setting panel, but the credentials had expired. When starting evolution, a blue error bar would be displayed at the top of the window. When this occurs, evolution crashes. After resolving the problem with the gmail credentials, the error bar is no longer displayed, and evolution stops crashing.

It would seem this is a problem with the way evolution renders the error bar under wayland.
Comment 2 Milan Crha 2015-11-27 01:42:44 EST
Thanks for a bug report. According to the backtrace the crash happens when a clipboard is manipulated. This had been filled recently upstream [1], thus let's move there. Please see [1] for any further updates.

[1] https://bugzilla.gnome.org/show_bug.cgi?id=758713

Note You need to log in before you can comment on or make changes to this bug.