aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--widgets/table/e-table.c12
-rw-r--r--widgets/table/e-tree.c14
2 files changed, 15 insertions, 11 deletions
diff --git a/widgets/table/e-table.c b/widgets/table/e-table.c
index 61e911f4ea..d9afb4804f 100644
--- a/widgets/table/e-table.c
+++ b/widgets/table/e-table.c
@@ -2462,11 +2462,13 @@ static void
context_destroyed (gpointer data)
{
ETable *et = data;
- et->last_drop_x = 0;
- et->last_drop_y = 0;
- et->last_drop_time = 0;
- et->last_drop_context = NULL;
- scroll_off (et);
+ if (!GTK_OBJECT_DESTROYED (et)) {
+ et->last_drop_x = 0;
+ et->last_drop_y = 0;
+ et->last_drop_time = 0;
+ et->last_drop_context = NULL;
+ scroll_off (et);
+ }
gtk_object_unref (GTK_OBJECT (et));
}
diff --git a/widgets/table/e-tree.c b/widgets/table/e-tree.c
index 300644f750..3e15e1db94 100644
--- a/widgets/table/e-tree.c
+++ b/widgets/table/e-tree.c
@@ -2375,12 +2375,14 @@ static void
context_destroyed (gpointer data)
{
ETree *et = data;
- et->priv->last_drop_x = 0;
- et->priv->last_drop_y = 0;
- et->priv->last_drop_time = 0;
- et->priv->last_drop_context = NULL;
- scroll_off (et);
- hover_off (et);
+ if (et->priv) {
+ et->priv->last_drop_x = 0;
+ et->priv->last_drop_y = 0;
+ et->priv->last_drop_time = 0;
+ et->priv->last_drop_context = NULL;
+ scroll_off (et);
+ hover_off (et);
+ }
gtk_object_unref (GTK_OBJECT (et));
}