[gtk+/gtk-3-22] updateiconcache: Avoid confusing loop construct



commit 512a33fee123409a6d6a231d2e3f56b22555e42b
Author: Daniel Boles <dboles src gnome org>
Date:   Wed Oct 4 22:24:49 2017 +0100

    updateiconcache: Avoid confusing loop construct
    
    n_attach_points is the result of g_strv_length(): the index at which the
    string vector ends in NULL. So by definition, when i == n_attach_points,
    string[i] == NULL, and there is no need to check for the latter. The
    fact that we did appears to confuse static analysers, as the dereference
    and index check were inverted from what would normally be safe. We could
    reverse them, but we may as well just remove the unnecessary NULL check.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=788458

 gtk/updateiconcache.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)
---
diff --git a/gtk/updateiconcache.c b/gtk/updateiconcache.c
index 4a11966..b48eaca 100644
--- a/gtk/updateiconcache.c
+++ b/gtk/updateiconcache.c
@@ -283,8 +283,7 @@ load_icon_data (const char *path)
       data->n_attach_points = g_strv_length (split);
       data->attach_points = g_new (int, 2 * data->n_attach_points);
 
-      i = 0;
-      while (split[i] != NULL && i < data->n_attach_points)
+      for (i = 0; i < data->n_attach_points; ++i)
        {
          split_point = strchr (split[i], ',');
          if (split_point)
@@ -294,7 +293,6 @@ load_icon_data (const char *path)
              data->attach_points[2 * i] = atoi (split[i]);
              data->attach_points[2 * i + 1] = atoi (split_point);
            }
-         i++;
        }
 
       g_strfreev (split);


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