dovecot-2.0-pigeonhole: Deprecated imapflags extension: fixed im...
pigeonhole at rename-it.nl
pigeonhole at rename-it.nl
Thu Jan 28 10:38:49 EET 2010
details: http://hg.rename-it.nl/dovecot-2.0-pigeonhole/rev/c4bc236883d2
changeset: 1225:c4bc236883d2
user: Stephan Bosch <stephan at rename-it.nl>
date: Wed Jan 27 19:02:12 2010 +0100
description:
Deprecated imapflags extension: fixed implicit assignment of flags.
diffstat:
src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.c | 10 ++++++----
src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.h | 2 +-
src/lib-sieve/plugins/imap4flags/ext-imap4flags.c | 7 ++++---
src/lib-sieve/plugins/imap4flags/ext-imapflags.c | 4 ++++
4 files changed, 15 insertions(+), 8 deletions(-)
diffs (69 lines):
diff -r d37fd9e2563f -r c4bc236883d2 src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.c
--- a/src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.c Thu Jan 28 09:20:28 2010 +0100
+++ b/src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.c Wed Jan 27 19:02:12 2010 +0100
@@ -149,16 +149,18 @@
void ext_imap4flags_attach_flags_tag
(struct sieve_validator *valdtr, const struct sieve_extension *ext,
- const char *command)
+ const char *command, bool implicit)
{
/* Register :flags tag with the command and we don't care whether it is
* registered or even whether it will be registered at all. The validator
* handles either situation gracefully
*/
- /* Tag specified by user */
- sieve_validator_register_external_tag
- (valdtr, command, ext, &tag_flags, SIEVE_OPT_SIDE_EFFECT);
+ if ( !implicit ) {
+ /* Tag specified by user */
+ sieve_validator_register_external_tag
+ (valdtr, command, ext, &tag_flags, SIEVE_OPT_SIDE_EFFECT);
+ }
/* Implicit tag if none is specified */
sieve_validator_register_persistent_tag
diff -r d37fd9e2563f -r c4bc236883d2 src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.h
--- a/src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.h Thu Jan 28 09:20:28 2010 +0100
+++ b/src/lib-sieve/plugins/imap4flags/ext-imap4flags-common.h Wed Jan 27 19:02:12 2010 +0100
@@ -68,7 +68,7 @@
void ext_imap4flags_attach_flags_tag
(struct sieve_validator *valdtr, const struct sieve_extension *ext,
- const char *command);
+ const char *command, bool implicit);
/*
* Flag management
diff -r d37fd9e2563f -r c4bc236883d2 src/lib-sieve/plugins/imap4flags/ext-imap4flags.c
--- a/src/lib-sieve/plugins/imap4flags/ext-imap4flags.c Thu Jan 28 09:20:28 2010 +0100
+++ b/src/lib-sieve/plugins/imap4flags/ext-imap4flags.c Wed Jan 27 19:02:12 2010 +0100
@@ -67,9 +67,10 @@
sieve_validator_register_command(valdtr, ext, &cmd_addflag);
sieve_validator_register_command(valdtr, ext, &cmd_removeflag);
sieve_validator_register_command(valdtr, ext, &tst_hasflag);
-
- ext_imap4flags_attach_flags_tag(valdtr, ext, "keep");
- ext_imap4flags_attach_flags_tag(valdtr, ext, "fileinto");
+
+ /* Attach :flags tag to keep and fileinto commands */
+ ext_imap4flags_attach_flags_tag(valdtr, ext, "keep", FALSE);
+ ext_imap4flags_attach_flags_tag(valdtr, ext, "fileinto", FALSE);
return TRUE;
}
diff -r d37fd9e2563f -r c4bc236883d2 src/lib-sieve/plugins/imap4flags/ext-imapflags.c
--- a/src/lib-sieve/plugins/imap4flags/ext-imapflags.c Thu Jan 28 09:20:28 2010 +0100
+++ b/src/lib-sieve/plugins/imap4flags/ext-imapflags.c Wed Jan 27 19:02:12 2010 +0100
@@ -130,6 +130,10 @@
sieve_validator_register_command(valdtr, master_ext, &cmd_mark);
sieve_validator_register_command(valdtr, master_ext, &cmd_unmark);
+
+ /* Attach implicit flags tag to keep and fileinto commands */
+ ext_imap4flags_attach_flags_tag(valdtr, master_ext, "keep", TRUE);
+ ext_imap4flags_attach_flags_tag(valdtr, master_ext, "fileinto", TRUE);
return TRUE;
}
More information about the dovecot-cvs
mailing list