]> spindle.queued.net Git - midori/commitdiff
Ensure we remove all items in katze_array_clear
authorChristian Dywan <christian@twotoasts.de>
Fri, 22 May 2009 00:40:02 +0000 (02:40 +0200)
committerChristian Dywan <christian@twotoasts.de>
Fri, 22 May 2009 00:40:02 +0000 (02:40 +0200)
Apparently looping through 'all' items isn't sufficient, so now
we remove the very first item until the list is empty.

katze/katze-array.c

index b9ff9647525c16b50fbfd128711394eba98e36c9..5df9291f40da4db89f6c6a9396197de6f5e18457 100644 (file)
@@ -111,16 +111,10 @@ _katze_array_move_item (KatzeArray* array,
 static void
 _katze_array_clear (KatzeArray* array)
 {
-    guint n;
-    guint i;
     GObject* item;
 
-    n = g_list_length (array->items);
-    for (i = 0; i < n; i++)
-    {
-        if ((item = g_list_nth_data (array->items, i)))
-            katze_array_remove_item (array, item);
-    }
+    while ((item = g_list_nth_data (array->items, 0)))
+        katze_array_remove_item (array, item);
     g_list_free (array->items);
     array->items = NULL;
 }