[evolution-data-server] CamelOperation can be used by other thread while in its finalize()



commit 5c77159e0cfdfc779ea85e12fa9f2eb7186336e1
Author: Milan Crha <mcrha redhat com>
Date:   Tue Jun 4 15:08:32 2019 +0200

    CamelOperation can be used by other thread while in its finalize()
    
    Related to https://gitlab.gnome.org/GNOME/evolution/issues/471

 src/camel/camel-operation.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)
---
diff --git a/src/camel/camel-operation.c b/src/camel/camel-operation.c
index bd19ad5fd..f0c9d830d 100644
--- a/src/camel/camel-operation.c
+++ b/src/camel/camel-operation.c
@@ -148,7 +148,7 @@ proxying_cancellable_cancelled_cb (GCancellable *cancellable,
 }
 
 static void
-operation_finalize (GObject *object)
+operation_dispose (GObject *object)
 {
        CamelOperationPrivate *priv;
 
@@ -168,14 +168,14 @@ operation_finalize (GObject *object)
        g_queue_remove (&operation_list, object);
 
        /* Because each StatusNode holds a reference to its
-        * CamelOperation, the fact that we're being finalized
+        * CamelOperation, the fact that we're being disposed
         * implies the stack should be empty now. */
        g_warn_if_fail (g_queue_is_empty (&priv->status_stack));
 
        UNLOCK ();
 
-       /* Chain up to parent's finalize() method. */
-       G_OBJECT_CLASS (camel_operation_parent_class)->finalize (object);
+       /* Chain up to parent's dispose() method. */
+       G_OBJECT_CLASS (camel_operation_parent_class)->dispose (object);
 }
 
 static void
@@ -186,7 +186,7 @@ camel_operation_class_init (CamelOperationClass *class)
        g_type_class_add_private (class, sizeof (CamelOperationPrivate));
 
        object_class = G_OBJECT_CLASS (class);
-       object_class->finalize = operation_finalize;
+       object_class->dispose = operation_dispose;
 
        signals[STATUS] = g_signal_new (
                "status",


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]