[maemo-commits] [maemo-commits] r14993 - projects/haf/trunk/hildon-1/src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Fri Dec 21 15:57:27 EET 2007
Author: xan
Date: 2007-12-21 15:57:18 +0200 (Fri, 21 Dec 2007)
New Revision: 14993

Modified:
   projects/haf/trunk/hildon-1/src/hildon-bread-crumb-trail.c
Log:
Assign next pointer before freeing list node!


Modified: projects/haf/trunk/hildon-1/src/hildon-bread-crumb-trail.c
===================================================================
--- projects/haf/trunk/hildon-1/src/hildon-bread-crumb-trail.c	2007-12-19 16:46:24 UTC (rev 14992)
+++ projects/haf/trunk/hildon-1/src/hildon-bread-crumb-trail.c	2007-12-21 13:57:18 UTC (rev 14993)
@@ -470,7 +470,7 @@
 hildon_bread_crumb_trail_remove (GtkContainer *container,
                                  GtkWidget *widget)
 {
-  GList *p;
+  GList *p, *next;
   HildonBreadCrumbTrailPrivate *priv;
   gboolean was_visible = GTK_WIDGET_VISIBLE (widget);
 
@@ -480,14 +480,15 @@
 
   while (p)
     {
+      next = p->next;
+
       if (widget == GTK_WIDGET (p->data))
         {
           g_signal_handlers_disconnect_by_func (widget, G_CALLBACK (crumb_activated_cb),
                                                 HILDON_BREAD_CRUMB_TRAIL (container));
           gtk_widget_unparent (widget);
 
-          priv->item_list = g_list_remove_link (priv->item_list, p);
-          g_list_free (p);
+          priv->item_list = g_list_delete_link (priv->item_list, p);
 
           hildon_bread_crumb_trail_update_back_button_sensitivity (HILDON_BREAD_CRUMB_TRAIL (container));
 
@@ -497,7 +498,7 @@
             }
         }
 
-      p = p->next;
+      p = next;
     }
 }
 


More information about the maemo-commits mailing list