[gtk+] Do not leak list when drawing notebook.



commit c4e17bb148d34088f3dc3039f3fb38a563df218e
Author: Paolo Borelli <pborelli gnome org>
Date:   Wed Apr 6 06:18:18 2011 +0200

    Do not leak list when drawing notebook.
    
    When we construct the list in the other order we must free it.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=646886

 gtk/gtknotebook.c |   12 +++++-------
 1 files changed, 5 insertions(+), 7 deletions(-)
---
diff --git a/gtk/gtknotebook.c b/gtk/gtknotebook.c
index 8967036..f8f3d13 100644
--- a/gtk/gtknotebook.c
+++ b/gtk/gtknotebook.c
@@ -4921,7 +4921,7 @@ gtk_notebook_paint (GtkWidget    *widget,
   GtkNotebookPrivate *priv;
   GtkNotebookPage *page;
   GtkAllocation allocation;
-  GList *children, *other_order;
+  GList *children;
   gboolean showarrow;
   gint width, height;
   gint x, y;
@@ -5093,7 +5093,7 @@ gtk_notebook_paint (GtkWidget    *widget,
 
   if (children != NULL)
     {
-      other_order = NULL;
+      GList *other_order = NULL;
 
       while (children)
         {
@@ -5109,17 +5109,15 @@ gtk_notebook_paint (GtkWidget    *widget,
         }
 
       /* draw them with the opposite order */
-      children = other_order;
-
-      while (children)
+      for (children = other_order; children; children = children->next)
         {
           page = children->data;
 
           tab_flags = _gtk_notebook_get_tab_flags (notebook, page);
           gtk_notebook_draw_tab (notebook, page, cr, tab_flags);
-
-          children = children->next;
         }
+
+      g_list_free (other_order);
     }
 
   if (showarrow && priv->scrollable)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]