summaryrefslogtreecommitdiff
path: root/gtk/gtktreedatalist.c
diff options
context:
space:
mode:
authorKristian Rietveld <kris@gtk.org>2001-12-03 21:20:12 +0000
committerKristian Rietveld <kristian@src.gnome.org>2001-12-03 21:20:12 +0000
commit5a2ebedc20d0b05ef00cdf8c26403bcb3ed91344 (patch)
tree9dd0c3447c8552a3b978eb3c18704716a2d91fae /gtk/gtktreedatalist.c
parent6b38775043a26911d08265ca9e1d3a70d1e9eeb3 (diff)
downloadgtk+-5a2ebedc20d0b05ef00cdf8c26403bcb3ed91344.tar.gz
if we use pointers, we should free the previous pointer first (if it
Mon Dec 3 21:15:59 2001 Kristian Rietveld <kris@gtk.org> * gtk/gtktreedatalist.c (_gtk_tree_data_list_value_to_node): if we use pointers, we should free the previous pointer first (if it exists), before we set a new pointer. (#64726) * gtk/gtktreeprivate.h: get rid of cursor_drag * gtk/gtktreeview.c (gtk_tree_view_unrealize): remove check for cursor_drag (gtk_tree_view_bin_expose): don't directly return in the while loop (gtk_tree_view_class_init): indentend expanders by default (gtk_tree_view_header_focus): only give the button focus if it's clickable, visible and the column is reorderable (#65539) * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button): create and free cursor
Diffstat (limited to 'gtk/gtktreedatalist.c')
-rw-r--r--gtk/gtktreedatalist.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gtk/gtktreedatalist.c b/gtk/gtktreedatalist.c
index d47874cfe9..ca11a4ecd0 100644
--- a/gtk/gtktreedatalist.c
+++ b/gtk/gtktreedatalist.c
@@ -196,12 +196,18 @@ _gtk_tree_data_list_value_to_node (GtkTreeDataList *list,
list->data.v_double = g_value_get_double (value);
break;
case G_TYPE_STRING:
+ if (list->data.v_pointer)
+ g_free (list->data.v_pointer);
list->data.v_pointer = g_value_dup_string (value);
break;
case G_TYPE_OBJECT:
+ if (list->data.v_pointer)
+ g_object_unref (list->data.v_pointer);
list->data.v_pointer = g_value_dup_object (value);
break;
case G_TYPE_BOXED:
+ if (list->data.v_pointer)
+ g_boxed_free (G_VALUE_TYPE (value), list->data.v_pointer);
list->data.v_pointer = g_value_dup_boxed (value);
break;
default: