Bug 776220 - GTK applications crash when using touchscreen
GTK applications crash when using touchscreen
Status: NEW
Product: mutter
Classification: Core
Component: wayland
3.24.x
Other Linux
: High critical
: ---
Assigned To: mutter-maint
mutter-maint
:
: 774187 783960 786420 (view as bug list)
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2016-12-17 21:50 UTC by William Di Luigi
Modified: 2017-09-14 12:19 UTC (History)
11 users (show)

See Also:
GNOME target: ---
GNOME version: ---


Attachments

Description William Di Luigi 2016-12-17 21:50:05 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)
Comment 1 William Di Luigi 2016-12-17 21:51:13 UTC
Correction: step 4 should say "touch" instead of "click", just like step 3. This issue only happens when using the touch screen.
Comment 2 Carlos Garnacho 2016-12-19 15:49:40 UTC
This is an inconsistency in mutter, the client receives wl_touch.motion with no prior wl_touch.down.
Comment 3 Strangiato 2017-03-30 15:13:12 UTC
I can confirm this crash on Arch running Gnome 3.24.
Comment 4 Volker Sobek (weld) 2017-04-27 20:54:11 UTC
*** Bug 774187 has been marked as a duplicate of this bug. ***
Comment 5 Volker Sobek (weld) 2017-04-27 21:01:16 UTC
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
Comment 6 Alexandre Franke 2017-05-07 16:27:45 UTC
Crash → major (not critical since there is a workaround, first clicking again on the menu to make it disappear).
Comment 7 Daniel Boles 2017-08-23 19:38:19 UTC
*** Bug 786420 has been marked as a duplicate of this bug. ***
Comment 8 Daniel Boles 2017-08-23 19:38:45 UTC
*** Bug 783960 has been marked as a duplicate of this bug. ***
Comment 9 Christian Persch 2017-09-14 09:40:33 UTC
(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.
Comment 10 Alexandre Franke 2017-09-14 12:19:10 UTC
(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.

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