From: Owen Taylor Date: Sat, 6 Feb 1999 16:14:45 +0000 (+0000) Subject: Add the entire draw_data_list back to the free list, not just the last X-Git-Url: http://pileus.org/git/?a=commitdiff_plain;h=39e29436509f6aa47eac503f333a91a017fb7ab2;p=~andy%2Fgtk Add the entire draw_data_list back to the free list, not just the last Sat Feb 6 11:20:16 1999 Owen Taylor * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the entire draw_data_list back to the free list, not just the last element. --- diff --git a/ChangeLog b/ChangeLog index 8029fae54..a501d41b8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 8029fae54..a501d41b8 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,9 @@ +Sat Feb 6 11:20:16 1999 Owen Taylor + + * gtk/gtkwidget.c (gtk_widget_idle_draw): Add the + entire draw_data_list back to the free list, not + just the last element. + Sat Feb 6 00:21:14 1999 Lars Hamann * gtk/gtkctree.c (draw_row): diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index 138dcf771..b1d507340 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -2205,6 +2205,8 @@ gtk_widget_idle_draw (gpointer cb_data) while (widget_list) { + GSList *tmp_list; + widget = widget_list->data; draw_data_list = gtk_object_get_data_by_id (GTK_OBJECT (widget), draw_data_tmp_key_id); @@ -2212,17 +2214,18 @@ gtk_widget_idle_draw (gpointer cb_data) draw_data_tmp_key_id, NULL); - while (draw_data_list) + tmp_list = draw_data_list; + while (tmp_list) { - GtkDrawData *data = draw_data_list->data; + GtkDrawData *data = tmp_list->data; if ((data->rect.width != 0) || (data->rect.height != 0)) gtk_widget_draw (widget, &data->rect); - if (draw_data_list->next) - draw_data_list = draw_data_list->next; + if (tmp_list->next) + tmp_list = tmp_list->next; else { - draw_data_list->next = draw_data_free_list; + tmp_list->next = draw_data_free_list; draw_data_free_list = draw_data_list; break; }