[mutter] display: Check we have a screen before freeing it



commit e1ffe15d9424eacd945ee7d3118b72dcbfeebc5b
Author: Florian Müllner <fmuellner gnome org>
Date:   Fri Feb 17 14:24:38 2017 +0100

    display: Check we have a screen before freeing it
    
    The reason for the display to be closed may be meta_screen_new()
    returning NULL, in which case we don't have a screen to free.
    Avoid a segfault on exit by adding a proper check.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=778831

 src/core/display.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)
---
diff --git a/src/core/display.c b/src/core/display.c
index 234e303..64c41d1 100644
--- a/src/core/display.c
+++ b/src/core/display.c
@@ -1129,7 +1129,9 @@ meta_display_close (MetaDisplay *display,
   meta_display_free_events_x11 (display);
   meta_display_free_events (display);
 
-  meta_screen_free (display->screen, timestamp);
+  if (display->screen)
+    meta_screen_free (display->screen, timestamp);
+  display->screen = NULL;
 
   /* Must be after all calls to meta_window_unmanage() since they
    * unregister windows


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