aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-table-one.c
diff options
context:
space:
mode:
authorJP Rosevear <jpr@ximian.com>2003-04-11 23:13:38 +0800
committerJP Rosevear <jpr@src.gnome.org>2003-04-11 23:13:38 +0800
commit327954a4ec28403b1ff7eaaf830047e33317d05a (patch)
treebcf1d70e2ee6e16960a7b1b68df3aa2f36eab30e /widgets/table/e-table-one.c
parent730d7da9eb2cc54d9302754887f06f9c996efed7 (diff)
downloadgsoc2013-evolution-327954a4ec28403b1ff7eaaf830047e33317d05a.tar.gz
gsoc2013-evolution-327954a4ec28403b1ff7eaaf830047e33317d05a.tar.zst
gsoc2013-evolution-327954a4ec28403b1ff7eaaf830047e33317d05a.zip
free data here since we don't have source in finalize
2003-04-11 JP Rosevear <jpr@ximian.com> * e-table-one.c (one_dispose): free data here since we don't have source in finalize svn path=/trunk/; revision=20817
Diffstat (limited to 'widgets/table/e-table-one.c')
-rw-r--r--widgets/table/e-table-one.c26
1 files changed, 15 insertions, 11 deletions
diff --git a/widgets/table/e-table-one.c b/widgets/table/e-table-one.c
index 24ea978f19..123b45712d 100644
--- a/widgets/table/e-table-one.c
+++ b/widgets/table/e-table-one.c
@@ -136,26 +136,30 @@ one_finalize (GObject *object)
{
ETableOne *one = E_TABLE_ONE (object);
+ G_OBJECT_CLASS (parent_class)->finalize (object);
+}
+
+static void
+one_dispose (GObject *object)
+{
+ ETableOne *one = E_TABLE_ONE (object);
+
+
if (one->data) {
int i;
int col_count;
- col_count = e_table_model_column_count(one->source);
+ if (one->source) {
+ col_count = e_table_model_column_count(one->source);
- for (i = 0; i < col_count; i++)
- e_table_model_free_value(one->source, i, one->data[i]);
+ for (i = 0; i < col_count; i++)
+ e_table_model_free_value(one->source, i, one->data[i]);
+ }
+
g_free (one->data);
}
one->data = NULL;
- G_OBJECT_CLASS (parent_class)->finalize (object);
-}
-
-static void
-one_dispose (GObject *object)
-{
- ETableOne *one = E_TABLE_ONE (object);
-
if (one->source)
g_object_unref(one->source);
one->source = NULL;