changeset 11772:06e4a422aa91 HEAD

dsync: Added extra assert
author Timo Sirainen <tss@iki.fi>
date Sat, 10 Jul 2010 15:57:37 +0100
parents 56cf4f6261dd
children f93507788bc3
files src/dsync/dsync-worker-local.c
diffstat 1 files changed, 4 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/dsync/dsync-worker-local.c	Sat Jul 10 15:56:45 2010 +0100
+++ b/src/dsync/dsync-worker-local.c	Sat Jul 10 15:57:37 2010 +0100
@@ -102,6 +102,7 @@
 	void *finish_context;
 
 	unsigned int reading_mail:1;
+	unsigned int finished:1;
 };
 
 extern struct dsync_worker_vfuncs local_dsync_worker;
@@ -1511,6 +1512,8 @@
 	if (worker->save_io != NULL || worker->reading_mail)
 		return;
 
+	i_assert(!worker->finished);
+	worker->finished = TRUE;
 	worker->finish_callback(!worker->worker.failed, worker->finish_context);
 }
 
@@ -1696,6 +1699,7 @@
 	struct local_dsync_worker *worker =
 		(struct local_dsync_worker *)_worker;
 
+	worker->finished = FALSE;
 	worker->finish_callback = callback;
 	worker->finish_context = context;