Bug 696637 - Deadlock in data_cal_view_dispose().
authorMatthew Barnes <mbarnes@redhat.com>
Tue, 26 Mar 2013 14:01:06 +0000 (10:01 -0400)
committerMatthew Barnes <mbarnes@redhat.com>
Tue, 26 Mar 2013 14:01:06 +0000 (10:01 -0400)
Ownership semantics getting confused here.

e_cal_backend_remove_view() caused the view to be disposed, but
the view object was being too clever for its own good by calling
e_cal_backend_remove_view() from its own dispose().

calendar/libedata-cal/e-data-cal-view.c

index 65a1b7d..cd33210 100644 (file)
@@ -419,9 +419,6 @@ data_cal_view_dispose (GObject *object)
        priv = E_DATA_CAL_VIEW_GET_PRIVATE (object);
 
        if (priv->backend != NULL) {
-               e_cal_backend_remove_view (
-                       priv->backend,
-                       E_DATA_CAL_VIEW (object));
                g_object_unref (priv->backend);
                priv->backend = NULL;
        }