diff options
author | Federico Mena Quintero <federico@helixcode.com> | 2000-12-08 00:24:42 +0800 |
---|---|---|
committer | Federico Mena Quintero <federico@src.gnome.org> | 2000-12-08 00:24:42 +0800 |
commit | a22a4c17a5796ed4aa4249f6154b7d3321bd6709 (patch) | |
tree | 0ff4b2d36582a13a251907672720728c4f30702e /widgets/table | |
parent | dbd0b894c29ae2903b97dab4ee920badea62f074 (diff) | |
download | gsoc2013-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.c | 8 | ||||
-rw-r--r-- | widgets/table/e-table-state.c | 2 | ||||
-rw-r--r-- | widgets/table/e-table.c | 8 |
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 |