[gtk+] win32draw: Use the right checks



commit 414657100f2c3f56d3304bd28dfd1759971a80dd
Author: Benjamin Otte <otte redhat com>
Date:   Mon Feb 22 04:00:36 2016 +0100

    win32draw: Use the right checks
    
    The first check was the wrong way around.
    
    The second check made the function look wrong. Invalid ID is actually
    the special case that should be handled first, so write the function
    like that.

 gtk/gtkwin32draw.c |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)
---
diff --git a/gtk/gtkwin32draw.c b/gtk/gtkwin32draw.c
index 16459ce..6caaa77 100644
--- a/gtk/gtkwin32draw.c
+++ b/gtk/gtkwin32draw.c
@@ -481,7 +481,7 @@ gtk_win32_get_sys_metric_id_for_name (const char *name)
 int
 gtk_win32_get_sys_metric (gint id)
 {
-  if (id >= 0 && id < G_N_ELEMENTS (win32_default_metrics))
+  if (id < 0 || id >= G_N_ELEMENTS (win32_default_metrics))
     return 0;
 
   if (win32_default_metrics[id].get_value)
@@ -558,9 +558,12 @@ void
 gtk_win32_get_sys_color (gint     id,
                          GdkRGBA *color)
 {
-  if (id < G_N_ELEMENTS (win32_default_colors))
-    *color = win32_default_colors[id].rgba;
-  else
-    gdk_rgba_parse (color, "black");
+  if (id < 0 || id >= G_N_ELEMENTS (win32_default_colors))
+    {
+      gdk_rgba_parse (color, "black");
+      return;
+    }
+
+  *color = win32_default_colors[id].rgba;
 }
 


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