From ee34e3790f2f9f21a79e2fe421b0301730abe4f8 Mon Sep 17 00:00:00 2001 From: Sam Spilsbury Date: Tue, 10 Oct 2017 11:39:40 -0500 Subject: [PATCH] core: Return -1 if meta_window_get_monitor is called on an unmanaged window Forwarded: yes Bug-GNOME: https://bugzilla.gnome.org/show_bug.cgi?id=788834 Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/bionic/+source/gnome-shell/+bug/1724439 As opposed to crashing. In this case, letting the caller deal with it is the best policy, since this is public API. Fixes #78834 Gbp-Pq: Name core-Return-1-if-meta_window_get_monitor-is-called-on-an-.patch --- src/core/window.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/core/window.c b/src/core/window.c index 86f9d69..b1dcd80 100644 --- a/src/core/window.c +++ b/src/core/window.c @@ -3750,11 +3750,16 @@ maybe_move_attached_dialog (MetaWindow *window, * * Gets index of the monitor that this window is on. * - * Return Value: The index of the monitor in the screens monitor list + * Return Value: The index of the monitor in the screens monitor list, or -1 + * if the window has been recently unmanaged and does not have + * a monitor. */ int meta_window_get_monitor (MetaWindow *window) { + if (!window->monitor) + return -1; + return window->monitor->number; } -- 2.30.2