aboutsummaryrefslogtreecommitdiffstats
path: root/widgets
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2000-10-20 00:41:07 +0800
committerDan Winship <danw@src.gnome.org>2000-10-20 00:41:07 +0800
commit79d19f353c19137c65fe40164d90da0b16eee9ed (patch)
treeaf964917e332c08be46d55fe6e2acff5f2fdf531 /widgets
parentf0a66281c6258e5225ca0a2059e774a665a50bf4 (diff)
downloadgsoc2013-evolution-79d19f353c19137c65fe40164d90da0b16eee9ed.tar.gz
gsoc2013-evolution-79d19f353c19137c65fe40164d90da0b16eee9ed.tar.zst
gsoc2013-evolution-79d19f353c19137c65fe40164d90da0b16eee9ed.zip
remove timeouts on destroy so they don't try to write to freed data
svn path=/trunk/; revision=6032
Diffstat (limited to 'widgets')
-rw-r--r--widgets/table/e-table-sorted-variable.c3
-rw-r--r--widgets/text/e-text.c10
2 files changed, 13 insertions, 0 deletions
diff --git a/widgets/table/e-table-sorted-variable.c b/widgets/table/e-table-sorted-variable.c
index f6682ca28b..238da9e353 100644
--- a/widgets/table/e-table-sorted-variable.c
+++ b/widgets/table/e-table-sorted-variable.c
@@ -55,6 +55,9 @@ etsv_destroy (GtkObject *object)
if (etsv->sort_idle_id) {
g_source_remove(etsv->sort_idle_id);
}
+ if (etsv->insert_idle_id) {
+ g_source_remove(etsv->insert_idle_id);
+ }
etsv->table_model_changed_id = 0;
etsv->table_model_row_changed_id = 0;
diff --git a/widgets/text/e-text.c b/widgets/text/e-text.c
index b487cf44db..0abef82bd5 100644
--- a/widgets/text/e-text.c
+++ b/widgets/text/e-text.c
@@ -433,6 +433,16 @@ e_text_destroy (GtkObject *object)
text->tooltip_timeout = 0;
}
+ if ( text->dbl_timeout ) {
+ gtk_timeout_remove (text->dbl_timeout);
+ text->dbl_timeout = 0;
+ }
+
+ if ( text->tpl_timeout ) {
+ gtk_timeout_remove (text->tpl_timeout);
+ text->tpl_timeout = 0;
+ }
+
if (GTK_OBJECT_CLASS (parent_class)->destroy)
(* GTK_OBJECT_CLASS (parent_class)->destroy) (object);
}