[gtk+] quartz: NSWindow NULL check in get_scale_factor



commit ec37fbe2e29a7a02502f9a9d499a707f208e01d6
Author: Philip Chimento <philip chimento gmail com>
Date:   Fri Oct 10 21:35:23 2014 -0700

    quartz: NSWindow NULL check in get_scale_factor
    
    Sending backingScaleFactor to a NULL NSWindow will silently give the
    value 0 for the scale factor, causing insidious divide-by-zero bugs down
    the line. This checks if the NSWindow is NULL first, as seems to happen
    throughout the rest of the file.
    
    Note that I don't have a hi-DPI OS X machine to test this on, though.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=738338

 gdk/quartz/gdkwindow-quartz.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/gdk/quartz/gdkwindow-quartz.c b/gdk/quartz/gdkwindow-quartz.c
index 468bc8b..2a2444e 100644
--- a/gdk/quartz/gdkwindow-quartz.c
+++ b/gdk/quartz/gdkwindow-quartz.c
@@ -2852,7 +2852,7 @@ gdk_quartz_window_get_scale_factor (GdkWindow *window)
 
   impl = GDK_WINDOW_IMPL_QUARTZ (window->impl);
 
-  if (gdk_quartz_osx_version() >= GDK_OSX_LION)
+  if (impl->toplevel != NULL && gdk_quartz_osx_version() >= GDK_OSX_LION)
     return [(id <ScaleFactor>) impl->toplevel backingScaleFactor];
 
   return 1;


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