[mutter] contraints: Do not constrain modals without parent



commit 912a6f5e3f86040b75c18ce2e2c26ffd9a7925ee
Author: Olivier Fourdan <ofourdan redhat com>
Date:   Sun Jul 8 16:23:25 2018 +0200

    contraints: Do not constrain modals without parent
    
    xdg-foreign clears the `transient_for` of a modal dialog when its
    imported parent is destroyed, which would later cause a crash in
    `constrain_modal_dialog()` because the transient `NULL`.
    
    So in case a modal dialog has no parent, do not try to constrain it
    against its parent.
    
    Closes: https://gitlab.gnome.org/GNOME/mutter/issues/174

 src/core/constraints.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
---
diff --git a/src/core/constraints.c b/src/core/constraints.c
index f84ef7d61..73b4b96ea 100644
--- a/src/core/constraints.c
+++ b/src/core/constraints.c
@@ -887,7 +887,8 @@ constrain_modal_dialog (MetaWindow         *window,
   MetaRectangle child_rect, parent_rect;
   gboolean constraint_already_satisfied;
 
-  if (!meta_window_is_attached_dialog (window) ||
+  if (!parent ||
+      !meta_window_is_attached_dialog (window) ||
       meta_window_get_placement_rule (window))
     return TRUE;
 


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