diff --git a/ChangeLog b/ChangeLog index c51a244d14..bbe3636349 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2005-11-28 Matthias Clasen + * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly + handle the cell list and indices into it. (#321856) + * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when the timeout is done. (#322291, Jean-Yves Lefort) diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index c51a244d14..bbe3636349 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,5 +1,8 @@ 2005-11-28 Matthias Clasen + * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly + handle the cell list and indices into it. (#321856) + * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when the timeout is done. (#322291, Jean-Yves Lefort) diff --git a/gtk/gtkiconview.c b/gtk/gtkiconview.c index d45ff05eee..aa0f554ddb 100644 --- a/gtk/gtkiconview.c +++ b/gtk/gtkiconview.c @@ -4719,10 +4719,13 @@ update_text_cell (GtkIconView *icon_view) { if (icon_view->priv->text_cell != -1) { + if (icon_view->priv->pixbuf_cell > icon_view->priv->text_cell) + icon_view->priv->pixbuf_cell--; + info = g_list_nth_data (icon_view->priv->cell_list, icon_view->priv->text_cell); - g_list_remove (icon_view->priv->cell_list, info); + icon_view->priv->cell_list = g_list_remove (icon_view->priv->cell_list, info); free_cell_info (info); @@ -4789,10 +4792,13 @@ update_pixbuf_cell (GtkIconView *icon_view) { if (icon_view->priv->pixbuf_cell != -1) { + if (icon_view->priv->text_cell > icon_view->priv->pixbuf_cell) + icon_view->priv->text_cell--; + info = g_list_nth_data (icon_view->priv->cell_list, icon_view->priv->pixbuf_cell); - g_list_remove (icon_view->priv->cell_list, info); + icon_view->priv->cell_list = g_list_remove (icon_view->priv->cell_list, info); free_cell_info (info);