From 9a8bb8a205656ca1089444a041c99c5591477642 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= Date: Fri, 3 May 2019 18:10:47 +0000 Subject: [PATCH 2/2] window: Emit an error and return when trying to activate an unmanaged If something (i.e. gnome-shell or an extension) tries to activate an unmanaged window, we should warn about this and avoid to perform further actions as this could lead to a crash of mutter, since the window has not valid flags (like workspace) set anymore at this stage. Fixes https://gitlab.gnome.org/GNOME/mutter/issues/580 https://gitlab.gnome.org/GNOME/mutter/merge_requests/564 (cherry picked from commit a6fc656e917fd48b8708b8d9f4bf9f8b15581313) --- src/core/window.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/core/window.c b/src/core/window.c index d2c24506b..725cca7ce 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -3683,6 +3683,13 @@ meta_window_activate_full (MetaWindow *window, { MetaWorkspaceManager *workspace_manager = window->display->workspace_manager; gboolean allow_workspace_switch; + + if (window->unmanaging) + { + g_warning ("Trying to activate unmanaged window '%s'", window->desc); + return; + } + meta_topic (META_DEBUG_FOCUS, "_NET_ACTIVE_WINDOW message sent for %s at time %u " "by client type %u.\n", -- 2.21.0