aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table
diff options
context:
space:
mode:
authorFederico Mena Quintero <federico@helixcode.com>2000-12-08 00:24:42 +0800
committerFederico Mena Quintero <federico@src.gnome.org>2000-12-08 00:24:42 +0800
commita22a4c17a5796ed4aa4249f6154b7d3321bd6709 (patch)
tree0ff4b2d36582a13a251907672720728c4f30702e /widgets/table
parentdbd0b894c29ae2903b97dab4ee920badea62f074 (diff)
downloadgsoc2013-evolution-a22a4c17a5796ed4aa4249f6154b7d3321bd6709.tar.gz
gsoc2013-evolution-a22a4c17a5796ed4aa4249f6154b7d3321bd6709.tar.zst
gsoc2013-evolution-a22a4c17a5796ed4aa4249f6154b7d3321bd6709.zip
Free the xmlDoc when we are done with it. (e_table_state_save_to_file):
2000-12-07 Federico Mena Quintero <federico@helixcode.com> * e-table-state.c (e_table_state_save_to_string): Free the xmlDoc when we are done with it. (e_table_state_save_to_file): Ditto. * e-table.c (e_table_get_state): Unref the state object; why was it being sunk instead? (e_table_save_state): Ditto. (e_table_load_state): Ditto. (e_table_set_state): Ditto. * e-table-header-item.c (ethi_destroy): Free the ethi->dnd_code. svn path=/trunk/; revision=6837
Diffstat (limited to 'widgets/table')
-rw-r--r--widgets/table/e-table-header-item.c8
-rw-r--r--widgets/table/e-table-state.c2
-rw-r--r--widgets/table/e-table.c8
3 files changed, 13 insertions, 5 deletions
diff --git a/widgets/table/e-table-header-item.c b/widgets/table/e-table-header-item.c
index 932846b6a0..2c13ef3dcc 100644
--- a/widgets/table/e-table-header-item.c
+++ b/widgets/table/e-table-header-item.c
@@ -85,12 +85,18 @@ ethi_destroy (GtkObject *object){
ethi_drop_table_header (ethi);
- if (ethi->sort_info){
+ if (ethi->dnd_code) {
+ g_free (ethi->dnd_code);
+ ethi->dnd_code = NULL;
+ }
+
+ if (ethi->sort_info) {
if (ethi->sort_info_changed_id)
gtk_signal_disconnect (GTK_OBJECT(ethi->sort_info), ethi->sort_info_changed_id);
if (ethi->group_info_changed_id)
gtk_signal_disconnect (GTK_OBJECT(ethi->sort_info), ethi->group_info_changed_id);
gtk_object_unref (GTK_OBJECT(ethi->sort_info));
+ ethi->sort_info = NULL;
}
if (GTK_OBJECT_CLASS (ethi_parent_class)->destroy)
diff --git a/widgets/table/e-table-state.c b/widgets/table/e-table-state.c
index 9361f4f940..36c7293267 100644
--- a/widgets/table/e-table-state.c
+++ b/widgets/table/e-table-state.c
@@ -117,6 +117,7 @@ e_table_state_save_to_file (ETableState *state,
doc = xmlNewDoc("1.0");
xmlDocSetRootElement(doc, e_table_state_save_to_node(state, NULL));
xmlSaveFile(filename, doc);
+ xmlFreeDoc(doc);
}
char *
@@ -130,6 +131,7 @@ e_table_state_save_to_string (ETableState *state)
doc = xmlNewDoc(NULL);
xmlDocSetRootElement(doc, e_table_state_save_to_node(state, NULL));
xmlDocDumpMemory(doc, &string, &length);
+ xmlFreeDoc(doc);
ret_val = g_strdup(string);
xmlFree(string);
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index e55e9ee010..271884ea14 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -777,7 +777,7 @@ void e_table_set_state (ETable *e_table
if (state->col_count > 0)
e_table_set_state_object(e_table, state);
- gtk_object_sink(GTK_OBJECT(state));
+ gtk_object_unref(GTK_OBJECT(state));
}
void e_table_load_state (ETable *e_table,
@@ -795,7 +795,7 @@ void e_table_load_state (ETable *e_table
if (state->col_count > 0)
e_table_set_state_object(e_table, state);
- gtk_object_sink(GTK_OBJECT(state));
+ gtk_object_unref(GTK_OBJECT(state));
}
ETableState *
@@ -834,7 +834,7 @@ gchar *e_table_get_state (ETable *e_table
state = e_table_get_state_object(e_table);
string = e_table_state_save_to_string(state);
- gtk_object_sink(GTK_OBJECT(state));
+ gtk_object_unref(GTK_OBJECT(state));
return string;
}
@@ -845,7 +845,7 @@ void e_table_save_state (ETable *e_table
state = e_table_get_state_object(e_table);
e_table_state_save_to_file(state, filename);
- gtk_object_sink(GTK_OBJECT(state));
+ gtk_object_unref(GTK_OBJECT(state));
}
static void