changeset 8356:d551cd628efa HEAD

Avoid assert-crashing when two processes try to create index at the same time.
author Timo Sirainen <tss@iki.fi>
date Wed, 30 Sep 2009 11:08:18 -0400
parents 298d58ab6e2c
children fe6879e2a497
files src/lib-index/mail-index.c
diffstat 1 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-index/mail-index.c	Wed Sep 30 08:52:12 2009 -0400
+++ b/src/lib-index/mail-index.c	Wed Sep 30 11:08:18 2009 -0400
@@ -347,6 +347,11 @@
 		}
 
 		ret = mail_transaction_log_create(index->log, FALSE);
+		if (index->map != NULL) {
+			/* log creation could have changed it if someone else
+			   just created it. */
+			index->map->hdr.indexid = index->indexid;
+		}
 		index->initial_create = FALSE;
 		created = TRUE;
 	}