summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorMatthias Clasen <matthiasc@src.gnome.org>2006-06-20 03:28:36 +0000
committerMatthias Clasen <matthiasc@src.gnome.org>2006-06-20 03:28:36 +0000
commit103bba09e47a3214ba29c3b58f7d46c12f256dda (patch)
tree4ce3298e5e93e0b2a4cbee2239907779b7cb95da /gtk
parenta5aaf6b8a521d1fcbd32f12743105b47475498bf (diff)
downloadgtk+-103bba09e47a3214ba29c3b58f7d46c12f256dda.tar.gz
(gtk_tree_view_set_column_drag_info): Don't crash if the
column_drop_func says always no. (#344850, Christian Weiske)
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtktreeview.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c
index aa670a8a9f..4307f9c7d0 100644
--- a/gtk/gtktreeview.c
+++ b/gtk/gtktreeview.c
@@ -9028,9 +9028,10 @@ gtk_tree_view_set_column_drag_info (GtkTreeView *tree_view,
/* We know there are always 2 slots possbile, as you can always return column. */
/* If that's all there is, return */
- if (tree_view->priv->column_drag_info->next->next == NULL &&
- ((GtkTreeViewColumnReorder *)tree_view->priv->column_drag_info->data)->right_column == column &&
- ((GtkTreeViewColumnReorder *)tree_view->priv->column_drag_info->next->data)->left_column == column)
+ if (g_list_length (tree_view->priv->column_drag_info) < 2 ||
+ (tree_view->priv->column_drag_info->next->next == NULL &&
+ ((GtkTreeViewColumnReorder *)tree_view->priv->column_drag_info->data)->right_column == column &&
+ ((GtkTreeViewColumnReorder *)tree_view->priv->column_drag_info->next->data)->left_column == column))
{
for (tmp_list = tree_view->priv->column_drag_info; tmp_list; tmp_list = tmp_list->next)
g_free (tmp_list->data);