dovecot-1.2: maildir: Having a lot of keywords assert-crashed wi...

dovecot at dovecot.org dovecot at dovecot.org
Tue Nov 3 00:54:26 EET 2009


details:   http://hg.dovecot.org/dovecot-1.2/rev/939edf3ed09b
changeset: 9464:939edf3ed09b
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Nov 02 17:54:17 2009 -0500
description:
maildir: Having a lot of keywords assert-crashed with "stack frame changed".

diffstat:

1 file changed, 4 insertions(+), 2 deletions(-)
src/lib-storage/index/maildir/maildir-sync-index.c |    6 ++++--

diffs (23 lines):

diff -r 0dc82e18530d -r 939edf3ed09b src/lib-storage/index/maildir/maildir-sync-index.c
--- a/src/lib-storage/index/maildir/maildir-sync-index.c	Mon Nov 02 13:34:49 2009 -0500
+++ b/src/lib-storage/index/maildir/maildir-sync-index.c	Mon Nov 02 17:54:17 2009 -0500
@@ -421,8 +421,8 @@ int maildir_sync_index(struct maildir_in
 	time_before_sync = time(NULL);
 	mbox->syncing_commit = TRUE;
 	seq = prev_uid = 0; first_recent_uid = I_MAX(hdr->first_recent_uid, 1);
-	t_array_init(&ctx->keywords, MAILDIR_MAX_KEYWORDS);
-	t_array_init(&ctx->idx_keywords, MAILDIR_MAX_KEYWORDS);
+	i_array_init(&ctx->keywords, MAILDIR_MAX_KEYWORDS);
+	i_array_init(&ctx->idx_keywords, MAILDIR_MAX_KEYWORDS);
 	iter = maildir_uidlist_iter_init(mbox->uidlist);
 	while (maildir_uidlist_iter_next(iter, &uid, &uflags, &filename)) {
 		maildir_filename_get_flags(ctx->keywords_sync_ctx, filename,
@@ -599,6 +599,8 @@ int maildir_sync_index(struct maildir_in
 			offsetof(struct mail_index_header, first_recent_uid),
 			&first_recent_uid, sizeof(first_recent_uid), FALSE);
 	}
+	array_free(&ctx->keywords);
+	array_free(&ctx->idx_keywords);
 	return ret < 0 ? -1 : (full_rescan ? 0 : 1);
 }
 


More information about the dovecot-cvs mailing list