dovecot: If fts_backend.build_init() fails, don't mark backend a...

dovecot at dovecot.org dovecot at dovecot.org
Sun Feb 3 22:44:13 EET 2008


details:   http://hg.dovecot.org/dovecot/rev/eec99cefd3bd
changeset: 7208:eec99cefd3bd
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Feb 03 22:41:51 2008 +0200
description:
If fts_backend.build_init() fails, don't mark backend as being built.

diffstat:

1 file changed, 6 insertions(+), 3 deletions(-)
src/plugins/fts/fts-api.c |    9 ++++++---

diffs (21 lines):

diff -r 2dffefc14e25 -r eec99cefd3bd src/plugins/fts/fts-api.c
--- a/src/plugins/fts/fts-api.c	Sun Feb 03 22:41:29 2008 +0200
+++ b/src/plugins/fts/fts-api.c	Sun Feb 03 22:41:51 2008 +0200
@@ -81,11 +81,14 @@ int fts_backend_build_init(struct fts_ba
 int fts_backend_build_init(struct fts_backend *backend, uint32_t *last_uid_r,
 			   struct fts_backend_build_context **ctx_r)
 {
+	int ret;
+
 	i_assert(!backend->building);
 
-	backend->building = TRUE;
-
-	return backend->v.build_init(backend, last_uid_r, ctx_r);
+	ret = backend->v.build_init(backend, last_uid_r, ctx_r);
+	if (ret == 0)
+		backend->building = TRUE;
+	return ret;
 }
 
 int fts_backend_build_more(struct fts_backend_build_context *ctx, uint32_t uid,


More information about the dovecot-cvs mailing list