Fix:gtk_drawing_area:Avoid hash iter, since it isn't available on older gtk versions
authormartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Wed, 9 Mar 2011 14:53:58 +0000 (14:53 +0000)
committermartin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220>
Wed, 9 Mar 2011 14:53:58 +0000 (14:53 +0000)
git-svn-id: https://navit.svn.sourceforge.net/svnroot/navit/trunk@4318 ffa7fe5e-494d-0410-b361-a75ebd5db220

navit/navit/graphics/gtk_drawing_area/graphics_gtk_drawing_area.c

index 40f73a2..76695ce 100644 (file)
@@ -110,14 +110,15 @@ static GHashTable *hImageData;   /*hastable for uncompressed image data*/
 static struct graphics_image_priv image_error;
 
 static void
+graphics_destroy_image(gpointer key, gpointer value, gpointer data)
+{
+       g_object_unref(((struct graphics_image_priv*)(value))->pixbuf);
+}
+
+static void
 graphics_destroy(struct graphics_priv *gr)
 {
-       GHashTableIter iter;
-       gpointer key, value;
-       g_hash_table_iter_init(&iter, hImageData);
-       while(g_hash_table_iter_next(&iter, &key, &value)) {
-               g_object_unref(((struct graphics_image_priv*)(value))->pixbuf);
-       }
+       g_hash_table_foreach(hImageData, graphics_destroy_image, NULL);
        g_hash_table_destroy(hImageData);
 }