[evolution-data-server/gnome-2-32] Bug #630321 - Disabling IMAPX account produces runtime warnings



commit 55cbe60c7d0f6ae13e79d6cb7b5ce4f789c4e2a3
Author: Milan Crha <mcrha redhat com>
Date:   Wed Sep 29 12:03:20 2010 +0200

    Bug #630321 - Disabling IMAPX account produces runtime warnings

 camel/providers/imapx/camel-imapx-server.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/camel/providers/imapx/camel-imapx-server.c b/camel/providers/imapx/camel-imapx-server.c
index 6aa59fc..b9cf927 100644
--- a/camel/providers/imapx/camel-imapx-server.c
+++ b/camel/providers/imapx/camel-imapx-server.c
@@ -4720,13 +4720,14 @@ imapx_parser_thread (gpointer d)
 
 	g_clear_error (&local_error);
 
+	QUEUE_LOCK (is);
 	if (op) {
 		camel_operation_unregister (op);
 		camel_operation_unref (op);
 	}
 	is->op = NULL;
+	QUEUE_UNLOCK (is);
 
-	is->parser_thread = NULL;
 	is->parser_quit = FALSE;
 
 	g_signal_emit (is, signals[SHUTDOWN], 0);
@@ -4772,14 +4773,16 @@ imapx_server_dispose (GObject *object)
 
 	QUEUE_LOCK(server);
 	server->state = IMAPX_SHUTDOWN;
-	QUEUE_UNLOCK(server);
 
 	server->parser_quit = TRUE;
 	if (server->op)
 		camel_operation_cancel (server->op);
+	QUEUE_UNLOCK(server);
 
-	if (server->parser_thread)
+	if (server->parser_thread) {
 		g_thread_join (server->parser_thread);
+		server->parser_thread = NULL;
+	}
 
 	if (server->cinfo && imapx_idle_supported (server))
 		imapx_exit_idle (server);



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