[mutter/gnome-3-34] wayland: Don't crash when trying to fullscreen on inert wl_output



commit 57992f37cc87ffaa68ccd9ef962f7badd8d6fcf4
Author: Jonas Ådahl <jadahl gmail com>
Date:   Wed Mar 11 12:27:07 2020 +0000

    wayland: Don't crash when trying to fullscreen on inert wl_output
    
    There is a race where an output can be used as a fullscreen target, but
    it has already been removed due to a hotplug. Handle this gracefully by
    ignoring said output in such situations.
    
    https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1120
    
    
    (cherry picked from commit 512bb7d1cd0836e6d110609a16fdbf9f9f5b30df)

 src/wayland/meta-wayland-legacy-xdg-shell.c | 2 +-
 src/wayland/meta-wayland-xdg-shell.c        | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/src/wayland/meta-wayland-legacy-xdg-shell.c b/src/wayland/meta-wayland-legacy-xdg-shell.c
index 0311a264a..32551a843 100644
--- a/src/wayland/meta-wayland-legacy-xdg-shell.c
+++ b/src/wayland/meta-wayland-legacy-xdg-shell.c
@@ -434,7 +434,7 @@ zxdg_toplevel_v6_set_fullscreen (struct wl_client   *client,
   if (output_resource)
     {
       MetaWaylandOutput *output = wl_resource_get_user_data (output_resource);
-      if (output)
+      if (output && output->logical_monitor)
         meta_window_move_to_monitor (window, output->logical_monitor->number);
     }
 
diff --git a/src/wayland/meta-wayland-xdg-shell.c b/src/wayland/meta-wayland-xdg-shell.c
index 7b1bff579..354f8f652 100644
--- a/src/wayland/meta-wayland-xdg-shell.c
+++ b/src/wayland/meta-wayland-xdg-shell.c
@@ -431,7 +431,7 @@ xdg_toplevel_set_fullscreen (struct wl_client   *client,
     {
       MetaWaylandOutput *output = wl_resource_get_user_data (output_resource);
 
-      if (output)
+      if (output && output->logical_monitor)
         {
           meta_window_move_to_monitor (window,
                                        output->logical_monitor->number);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]