assertion failure: mutter:ERROR:core/window.c:1478:meta_window_unmanage: assertion failed: (window->display->focus_window != window)
I just ran into a gnome-shell
crash while using file-roller
, with mutter on the gnome-3-26 branch (commit 4b2d21ff).
Feb 21 16:10:09 org.gnome.Shell.desktop[12376]: **
Feb 21 16:10:09 org.gnome.Shell.desktop[12376]: mutter:ERROR:core/window.c:1478:meta_window_unmanage: assertion failed: (window->display->focus_window != window)
Feb 21 16:10:09 org.gnome.Shell.desktop[12376]: == Stack trace for context 0x55d27d8ef000 ==
Feb 21 16:10:10 org.gnome.Shell.desktop[12376]: (EE)
Feb 21 16:10:10 org.gnome.Shell.desktop[12376]: Fatal server error:
Feb 21 16:10:10 org.gnome.Shell.desktop[12376]: (EE) failed to read Wayland events: Broken pipe
Feb 21 16:10:10 org.gnome.Shell.desktop[12376]: (EE)
gnome-shell backtrace:
#0 0x00007f68a3604020 in raise (sig=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1 0x000055d27b8aba1b in dump_gjs_stack_on_signal_handler (signo=6) at ../src/main.c:372
#2 0x00007f68a3604180 in <signal handler called> () at /lib/x86_64-linux-gnu/libpthread.so.0
#3 0x00007f68a32706a0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#4 0x00007f68a3271cf7 in __GI_abort () at abort.c:90
#5 0x00007f68a53aa7cd in g_assertion_message (domain=domain@entry=0x7f68a3915313 "mutter", file=file@entry=0x7f68a391f232 "core/window.c", line=line@entry=1478, func=func@entry=0x7f68a3921450 <__func__.107332> "meta_window_unmanage", message=message@entry=0x55d282fb6190 "assertion failed: (window->display->focus_window != window)") at ../../../../glib/gtestutils.c:2430
#6 0x00007f68a53aa85a in g_assertion_message_expr (domain=domain@entry=0x7f68a3915313 "mutter", file=file@entry=0x7f68a391f232 "core/window.c", line=line@entry=1478, func=func@entry=0x7f68a3921450 <__func__.107332> "meta_window_unmanage", expr=expr@entry=0x7f68a3920350 "window->display->focus_window != window") at ../../../../glib/gtestutils.c:2453
#7 0x00007f68a38c2afc in meta_window_unmanage (window=0x55d281dcc350 [MetaWindowWayland], timestamp=24655962) at core/window.c:1478
#8 0x00007f68a38f2ed3 in meta_wayland_surface_destroy_window (surface=0x55d27f09fc50 [MetaWaylandSurface]) at wayland/meta-wayland-surface.c:432
#9 0x00007f68a38f8159 in xdg_toplevel_destructor (resource=0x7f6880143470) at wayland/meta-wayland-xdg-shell.c:166
#10 0x00007f689a5bef30 in destroy_resource (element=0x7f6880143470, data=data@entry=0x0) at ../src/wayland-server.c:675
#11 0x00007f689a5bef82 in wl_resource_destroy (resource=<optimized out>) at ../src/wayland-server.c:690
#12 0x00007f689f6a6fce in ffi_call_unix64 () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#13 0x00007f689f6a693f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#14 0x00007f689a5c2a3b in wl_closure_invoke (closure=closure@entry=0x55d2829c35e0, flags=flags@entry=2, target=<optimized out>, target@entry=0x7f6880143470, opcode=opcode@entry=0, data=<optimized out>, data@entry=0x55d283149c00) at ../src/connection.c:935
#15 0x00007f689a5bf27f in wl_client_connection_data (fd=<optimized out>, mask=<optimized out>, data=0x55d283149c00) at ../src/wayland-server.c:406
#16 0x00007f689a5c0c12 in wl_event_loop_dispatch (loop=0x55d27d5dac40, timeout=timeout@entry=0) at ../src/event-loop.c:423
#17 0x00007f68a38dd8b7 in wayland_event_source_dispatch (base=base@entry=0x55d27d7ddb30, callback=<optimized out>, data=<optimized out>) at wayland/meta-wayland.c:84
#18 0x00007f68a5383f67 in g_main_dispatch (context=0x55d27d5f1700) at ../../../../glib/gmain.c:3142
#19 0x00007f68a5383f67 in g_main_context_dispatch (context=context@entry=0x55d27d5f1700) at ../../../../glib/gmain.c:3795
#20 0x00007f68a53841a0 in g_main_context_iterate (context=0x55d27d5f1700, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../../../../glib/gmain.c:3868
#21 0x00007f68a53844b2 in g_main_loop_run (loop=0x55d27d7d3a20) at ../../../../glib/gmain.c:4064
#22 0x00007f68a38af26c in meta_run () at core/main.c:648
#23 0x000055d27b8ab43c in main (argc=<optimized out>, argv=<optimized out>) at ../src/main.c:530
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788881 has a possible reproduction:
How to reproduce this error: Open a large archive in file-roller that causes the load dialog to appear. When the load dialog is active, grab the title bar of the parent window and move it around. Keep holding it. When the dialog disappears, mutter crashes.
https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1422253 may be the same issue (but looking at its age, maybe not).
https://bugzilla.gnome.org/show_bug.cgi?id=711618 is an old bug in GNOME bugzilla with the same assertion, but it was fixed years ago.