dovecot-2.0-sslstream: Added mailbox_list_set_changelog_writable().

dovecot at dovecot.org dovecot at dovecot.org
Sat Feb 13 02:56:37 EET 2010


details:   http://hg.dovecot.org/dovecot-2.0-sslstream/rev/d29bb46a1929
changeset: 10378:d29bb46a1929
user:      Timo Sirainen <tss at iki.fi>
date:      Thu Nov 19 18:20:23 2009 -0500
description:
Added mailbox_list_set_changelog_writable().

diffstat:

3 files changed, 10 insertions(+), 2 deletions(-)
src/lib-storage/mailbox-list-private.h |    2 ++
src/lib-storage/mailbox-list.c         |    7 ++++++-
src/lib-storage/mailbox-list.h         |    3 ++-

diffs (49 lines):

diff -r 2789f87b6828 -r d29bb46a1929 src/lib-storage/mailbox-list-private.h
--- a/src/lib-storage/mailbox-list-private.h	Thu Nov 19 18:19:32 2009 -0500
+++ b/src/lib-storage/mailbox-list-private.h	Thu Nov 19 18:20:23 2009 -0500
@@ -107,6 +107,8 @@ struct mailbox_list {
 	bool temporary_error;
 
 	ARRAY_DEFINE(module_contexts, union mailbox_list_module_context *);
+
+	unsigned int changelog_disabled:1;
 };
 
 struct mailbox_list_iterate_context {
diff -r 2789f87b6828 -r d29bb46a1929 src/lib-storage/mailbox-list.c
--- a/src/lib-storage/mailbox-list.c	Thu Nov 19 18:19:32 2009 -0500
+++ b/src/lib-storage/mailbox-list.c	Thu Nov 19 18:20:23 2009 -0500
@@ -701,7 +701,7 @@ void mailbox_list_add_change(struct mail
 {
 	struct mailbox_log_record rec;
 
-	if (!mailbox_list_init_changelog(list) ||
+	if (!mailbox_list_init_changelog(list) || list->changelog_disabled ||
 	    mail_guid_128_is_empty(mailbox_guid))
 		return;
 
@@ -919,6 +919,11 @@ struct mailbox_log *mailbox_list_get_cha
 struct mailbox_log *mailbox_list_get_changelog(struct mailbox_list *list)
 {
 	return !mailbox_list_init_changelog(list) ? NULL : list->changelog;
+}
+
+void mailbox_list_set_changelog_writable(struct mailbox_list *list, bool set)
+{
+	list->changelog_disabled = !set;
 }
 
 static int mailbox_list_try_delete(struct mailbox_list *list, const char *dir)
diff -r 2789f87b6828 -r d29bb46a1929 src/lib-storage/mailbox-list.h
--- a/src/lib-storage/mailbox-list.h	Thu Nov 19 18:19:32 2009 -0500
+++ b/src/lib-storage/mailbox-list.h	Thu Nov 19 18:20:23 2009 -0500
@@ -188,7 +188,8 @@ int mailbox_list_get_guid(struct mailbox
 			  uint8_t mailbox_guid[MAIL_GUID_128_SIZE]);
 /* Returns mailbox's change log, or NULL if it doesn't have one. */
 struct mailbox_log *mailbox_list_get_changelog(struct mailbox_list *list);
-
+/* Enable/disable writing mailbox changes to changelog. */
+void mailbox_list_set_changelog_writable(struct mailbox_list *list, bool set);
 
 /* Returns a prefix that temporary files should use without conflicting
    with the namespace. */


More information about the dovecot-cvs mailing list