]> err.no Git - libchamplain/commitdiff
Removed some memory leaks in build_combo_box()
authorEmmanuel Rodriguez <emmanuel.rodriguez@gmail.com>
Wed, 6 May 2009 06:01:37 +0000 (08:01 +0200)
committerPierre-Luc Beaudoin <pierre-luc@pierlux.com>
Thu, 7 May 2009 12:58:12 +0000 (08:58 -0400)
demos/launcher-gtk.c

index e5253c06c63acaea7e6e7fe18c92056f91302c81..3e05184c8f4ed9c9bcce93176e5019a84aeaa058 100644 (file)
@@ -131,7 +131,7 @@ static void
 build_combo_box (GtkComboBox *box)
 {
   ChamplainMapSourceFactory *factory;
-  GSList *sources;
+  GSList *sources, *iter;
   gint i = 0;
   GtkTreeStore *store;
   GtkTreeIter parent;
@@ -143,18 +143,19 @@ build_combo_box (GtkComboBox *box)
 
   factory = champlain_map_source_factory_get_default ();
   sources = champlain_map_source_factory_get_list (factory);
-
-  while (sources != NULL)
+  
+  iter = sources;
+  while (iter != NULL)
   {
     ChamplainMapSourceDesc *desc;
 
-    desc = (ChamplainMapSourceDesc*) sources->data;
+    desc = (ChamplainMapSourceDesc*) iter->data;
 
-    gtk_tree_store_appendstore, &parent, NULL );
-    gtk_tree_store_set( store, &parent, COL_ID, g_strdup (desc->id),
-        COL_NAME, g_strdup (desc->name), -1);
+    gtk_tree_store_append (store, &parent, NULL );
+    gtk_tree_store_set (store, &parent, COL_ID, desc->id,
+        COL_NAME, desc->name, -1);
 
-    sources = g_slist_next (sources);
+    iter = g_slist_next (iter);
   }
 
   g_slist_free (sources);