GNOME Bugzilla – Bug 776220
GTK applications crash when using touchscreen
Last modified: 2017-09-14 12:19:10 UTC
To reproduce: 1) start up gnome shell with wayland backend 2) open a gtk application (evince, nautilus...) 3) touch the date in the upper bar, the calendar will show up 4) click on the gtk application you opened before (outside the calendar) 5) the application will crash This is the stack trace when I do this with nautilus: Stack trace of thread 587: #0 0x00007f5eb69cce50 _create_touch_event (libgdk-3.so.0) #1 0x00007f5eb69cd6d3 touch_handle_up (libgdk-3.so.0) #2 0x00007f5eaf1471c8 ffi_call_unix64 (libffi.so.6) #3 0x00007f5eaf146c2a ffi_call (libffi.so.6) #4 0x00007f5eb10dd08e wl_closure_invoke (libwayland-client.so.0) #5 0x00007f5eb10d9d20 dispatch_event (libwayland-client.so.0) #6 0x00007f5eb10daf74 dispatch_queue (libwayland-client.so.0) #7 0x00007f5eb69d7734 _gdk_wayland_display_queue_events (libgdk-3.so.0) #8 0x00007f5eb6977169 gdk_display_get_event (libgdk-3.so.0) #9 0x00007f5eb69d7422 gdk_event_source_dispatch (libgdk-3.so.0) #10 0x00007f5eb52b2587 g_main_context_dispatch (libglib-2.0.so.0) #11 0x00007f5eb52b27f0 n/a (libglib-2.0.so.0) #12 0x00007f5eb52b289c g_main_context_iteration (libglib-2.0.so.0) #13 0x00007f5eb586c54d g_application_run (libgio-2.0.so.0) #14 0x00000000004293ba n/a (nautilus) #15 0x00007f5eb49c9291 __libc_start_main (libc.so.6) #16 0x000000000042941a n/a (nautilus) This is when I do this with evince: Stack trace of thread 1329: #0 0x00007f2b232cc3dd touch_handle_motion (libgdk-3.so.0) #1 0x00007f2b1bd551c8 ffi_call_unix64 (libffi.so.6) #2 0x00007f2b1bd54c2a ffi_call (libffi.so.6) #3 0x00007f2b1de6908e wl_closure_invoke (libwayland-client.so.0) #4 0x00007f2b1de65d20 dispatch_event (libwayland-client.so.0) #5 0x00007f2b1de66f74 dispatch_queue (libwayland-client.so.0) #6 0x00007f2b232d2734 _gdk_wayland_display_queue_events (libgdk-3.so.0) #7 0x00007f2b23272169 gdk_display_get_event (libgdk-3.so.0) #8 0x00007f2b232d2422 gdk_event_source_dispatch (libgdk-3.so.0) #9 0x00007f2b21dc2587 g_main_context_dispatch (libglib-2.0.so.0) #10 0x00007f2b21dc27f0 n/a (libglib-2.0.so.0) #11 0x00007f2b21dc289c g_main_context_iteration (libglib-2.0.so.0) #12 0x00007f2b2237c54d g_application_run (libgio-2.0.so.0) #13 0x000000000041ce1e n/a (evince) #14 0x00007f2b214d9291 __libc_start_main (libc.so.6) #15 0x000000000041cf4a n/a (evince)
Correction: step 4 should say "touch" instead of "click", just like step 3. This issue only happens when using the touch screen.
This is an inconsistency in mutter, the client receives wl_touch.motion with no prior wl_touch.down.
I can confirm this crash on Arch running Gnome 3.24.
*** Bug 774187 has been marked as a duplicate of this bug. ***
This bug is still present in fedora 26. It crashes 100% reliably nautilus, gnome-terminal, evince, ... (by following the steps William described). gtk3-3.22.12-2.fc26.x86_64 mutter-3.24.1-1.fc26.x86_64
Crash → major (not critical since there is a workaround, first clicking again on the menu to make it disappear).
*** Bug 786420 has been marked as a duplicate of this bug. ***
*** Bug 783960 has been marked as a duplicate of this bug. ***
(In reply to Alexandre Franke from comment #6) > Crash → major (not critical since there is a workaround, first clicking > again on the menu to make it disappear). Crashes don't have 'workarounds', and the steps in comment 0 appear not to be the only way to trigger this crash, judging from downstream (in b.r.c) gnome-terminal bugs.
(In reply to Christian Persch from comment #9) > Crashes don't have 'workarounds' Definition from Wikipedia: > A workaround is a bypass of a recognized problem in a system. The crash occurs when one clicks directly on an application to get out of a Shell widget and back to the application. As stated in comment #6, if one first clicks again on the Shell menu to get out of it, the crash doesn’t happen which works around the identified problem. > and the steps in comment 0 appear not to > be the only way to trigger this crash, judging from downstream (in b.r.c) > gnome-terminal bugs. Could you please give links to or quote those downstream reports? Merely stating they exist isn’t really helpful.