summaryrefslogtreecommitdiff
path: root/src/x11/window-x11.c
diff options
context:
space:
mode:
authorJeremy Nickurak <jeremy@nickurak.ca>2018-01-11 11:31:42 -0700
committerMarco Trevisan (TreviƱo) <mail@3v1n0.net>2018-01-21 14:41:48 +0100
commit6dcce19932506233e0663450aa8d62a0037132c4 (patch)
treeca4410278ce0c7f3e2c4cc6e9f90aeb6b7cd03a6 /src/x11/window-x11.c
parentcc40a885ef28bdea769ce6a9482791f3d3dacf52 (diff)
downloadmutter-6dcce19932506233e0663450aa8d62a0037132c4.tar.gz
Don't attempt to get monitor geometry on non-existent monitors
https://bugzilla.gnome.org/show_bug.cgi?id=788834
Diffstat (limited to 'src/x11/window-x11.c')
-rw-r--r--src/x11/window-x11.c49
1 files changed, 26 insertions, 23 deletions
diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c
index a8c53e8e6..bb84cdafc 100644
--- a/src/x11/window-x11.c
+++ b/src/x11/window-x11.c
@@ -2094,30 +2094,33 @@ meta_window_move_resize_request (MetaWindow *window,
rect.width = width;
rect.height = height;
- meta_screen_get_monitor_geometry (window->screen, window->monitor->number, &monitor_rect);
-
- /* Workaround braindead legacy apps that don't know how to
- * fullscreen themselves properly - don't get fooled by
- * windows which hide their titlebar when maximized or which are
- * client decorated; that's not the same as fullscreen, even
- * if there are no struts making the workarea smaller than
- * the monitor.
- */
- if (meta_prefs_get_force_fullscreen() &&
- !window->hide_titlebar_when_maximized &&
- (window->decorated || !meta_window_is_client_decorated (window)) &&
- meta_rectangle_equal (&rect, &monitor_rect) &&
- window->has_fullscreen_func &&
- !window->fullscreen)
+ if (window->monitor)
{
- /*
- meta_topic (META_DEBUG_GEOMETRY,
- */
- meta_warning (
- "Treating resize request of legacy application %s as a "
- "fullscreen request\n",
- window->desc);
- meta_window_make_fullscreen_internal (window);
+ meta_screen_get_monitor_geometry (window->screen, window->monitor->number, &monitor_rect);
+
+ /* Workaround braindead legacy apps that don't know how to
+ * fullscreen themselves properly - don't get fooled by
+ * windows which hide their titlebar when maximized or which are
+ * client decorated; that's not the same as fullscreen, even
+ * if there are no struts making the workarea smaller than
+ * the monitor.
+ */
+ if (meta_prefs_get_force_fullscreen() &&
+ !window->hide_titlebar_when_maximized &&
+ (window->decorated || !meta_window_is_client_decorated (window)) &&
+ meta_rectangle_equal (&rect, &monitor_rect) &&
+ window->has_fullscreen_func &&
+ !window->fullscreen)
+ {
+ /*
+ meta_topic (META_DEBUG_GEOMETRY,
+ */
+ meta_warning (
+ "Treating resize request of legacy application %s as a "
+ "fullscreen request\n",
+ window->desc);
+ meta_window_make_fullscreen_internal (window);
+ }
}
adjust_for_gravity (window, TRUE, gravity, &rect);