[evolution] EMailBackend: Explicitly remove CamelServices during dispose.



commit 39c14c53de640f9131cf511f5e0dbb6eb4d600a7
Author: Matthew Barnes <mbarnes redhat com>
Date:   Fri Jul 15 08:57:17 2011 -0400

    EMailBackend: Explicitly remove CamelServices during dispose.
    
    Calling camel_session_remove_services() while disposing of our
    CamelSession instance can help break reference cycles and ensures
    the CamelServices get finalized properly.

 mail/e-mail-backend.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)
---
diff --git a/mail/e-mail-backend.c b/mail/e-mail-backend.c
index b22dbcf..17007f2 100644
--- a/mail/e-mail-backend.c
+++ b/mail/e-mail-backend.c
@@ -519,6 +519,8 @@ mail_backend_dispose (GObject *object)
 		g_signal_handlers_disconnect_matched (
 			priv->session, G_SIGNAL_MATCH_DATA,
 			0, 0, NULL, NULL, object);
+		camel_session_remove_services (
+			CAMEL_SESSION (priv->session));
 		g_object_unref (priv->session);
 		priv->session = NULL;
 	}



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