aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-04-19 01:53:14 +0800
committerDan Winship <danw@src.gnome.org>2001-04-19 01:53:14 +0800
commitd9dc3541809b08e592657f14dcd690a111748fde (patch)
treef4b25dc0f0f05de3443a37cf53b0984127b47819
parenta8e5cab315af0a1639e3a330492db97db13e65e1 (diff)
downloadgsoc2013-evolution-d9dc3541809b08e592657f14dcd690a111748fde.tar.gz
gsoc2013-evolution-d9dc3541809b08e592657f14dcd690a111748fde.tar.zst
gsoc2013-evolution-d9dc3541809b08e592657f14dcd690a111748fde.zip
Free some things that weren't getting freed.
* e-table.c (et_destroy): Free some things that weren't getting freed. * e-tree.c (et_destroy): Free some things that weren't getting freed. (e_tree_set_state_object): Don't ref the return value of e_table_state_to_header. svn path=/trunk/; revision=9448
-rw-r--r--widgets/table/e-table.c3
-rw-r--r--widgets/table/e-tree.c10
2 files changed, 10 insertions, 3 deletions
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index 1d49f5c121..059d339444 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -179,6 +179,9 @@ et_destroy (GtkObject *object)
if (et->header_canvas != NULL)
gtk_widget_destroy (GTK_WIDGET (et->header_canvas));
+ if (et->site != NULL)
+ e_table_drag_source_unset (et);
+
gtk_widget_destroy (GTK_WIDGET (et->table_canvas));
if (et->rebuild_idle_id) {
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c
index 358d7a22b1..5f1ab0f944 100644
--- a/widgets/table/e-tree.c
+++ b/widgets/table/e-tree.c
@@ -193,9 +193,15 @@ et_destroy (GtkObject *object)
if (et->priv->spec)
gtk_object_unref (GTK_OBJECT (et->priv->spec));
- if (et->priv->header_canvas != NULL)
+ if (et->priv->sorter)
+ gtk_object_unref (GTK_OBJECT (et->priv->sorter));
+
+ if (et->priv->header_canvas)
gtk_widget_destroy (GTK_WIDGET (et->priv->header_canvas));
+ if (et->priv->site)
+ e_tree_drag_source_unset (et);
+
gtk_widget_destroy (GTK_WIDGET (et->priv->table_canvas));
g_free(et->priv);
@@ -676,8 +682,6 @@ e_tree_set_state_object(ETree *e_tree, ETableState *state)
if (e_tree->priv->header)
gtk_object_unref(GTK_OBJECT(e_tree->priv->header));
e_tree->priv->header = e_table_state_to_header (GTK_WIDGET(e_tree), e_tree->priv->full_header, state);
- if (e_tree->priv->header)
- gtk_object_ref(GTK_OBJECT(e_tree->priv->header));
gtk_object_set (GTK_OBJECT (e_tree->priv->header),
"width", (double) (GTK_WIDGET(e_tree->priv->table_canvas)->allocation.width),