[gtk+] updateiconcache: Avoid confusing loop construct



commit 88b15beb0a3c67544984099694619653545fba8a
Author: Daniel Boles <dboles src gmail com>
Date:   Wed Oct 4 22:58:48 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 1bcbbe2..fe2eb8f 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]