aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
authorler <ler@FreeBSD.org>2017-04-29 02:12:06 +0800
committerler <ler@FreeBSD.org>2017-04-29 02:12:06 +0800
commit2c480a581d75e2b2eb0ddc9025eafd91995f5435 (patch)
tree29759b0ca73d935724889d8f5f0379e827c1f068 /mail
parent878d94be995666b57c239d44549ecd2a2016d766 (diff)
downloadfreebsd-ports-gnome-2c480a581d75e2b2eb0ddc9025eafd91995f5435.tar.gz
freebsd-ports-gnome-2c480a581d75e2b2eb0ddc9025eafd91995f5435.tar.zst
freebsd-ports-gnome-2c480a581d75e2b2eb0ddc9025eafd91995f5435.zip
Upon continuing the deferred implicit keep, the implicit side-effects
(such as imap flags) were not applied. Obtained from: https://github.com/dovecot/pigeonhole/commit/3e1a17a286ab0e084577fc267a442cb12aed1cbc Approved by: adamw (mentor, implicit)
Diffstat (limited to 'mail')
-rw-r--r--mail/dovecot2-pigeonhole/Makefile1
-rw-r--r--mail/dovecot2-pigeonhole/files/patch-src_lib-sieve_sieve-result.c42
2 files changed, 43 insertions, 0 deletions
diff --git a/mail/dovecot2-pigeonhole/Makefile b/mail/dovecot2-pigeonhole/Makefile
index 5d1e77103299..93c27c3482dc 100644
--- a/mail/dovecot2-pigeonhole/Makefile
+++ b/mail/dovecot2-pigeonhole/Makefile
@@ -3,6 +3,7 @@
PORTNAME= dovecot-pigeonhole
PORTVERSION= 0.4.18
+PORTREVISION= 1
CATEGORIES= mail
MASTER_SITES= http://pigeonhole.dovecot.org/releases/${DOVECOTVERSION}/
DISTNAME= ${PORTNAME:C/-/-${DOVECOTVERSION}-/}-${PORTVERSION}
diff --git a/mail/dovecot2-pigeonhole/files/patch-src_lib-sieve_sieve-result.c b/mail/dovecot2-pigeonhole/files/patch-src_lib-sieve_sieve-result.c
new file mode 100644
index 000000000000..e1ebc850c5e0
--- /dev/null
+++ b/mail/dovecot2-pigeonhole/files/patch-src_lib-sieve_sieve-result.c
@@ -0,0 +1,42 @@
+From 3e1a17a286ab0e084577fc267a442cb12aed1cbc Mon Sep 17 00:00:00 2001
+From: Stephan Bosch <stephan.bosch@dovecot.fi>
+Date: Fri, 28 Apr 2017 00:02:39 +0200
+Subject: [PATCH] lib-sieve: Fixed bug in handling of deferred implicit keep
+ with implicit side-effects.
+
+Upon continuing the deferred implicit keep, the implicit side-effects (such as imap flags) were not applied.
+---
+ src/lib-sieve/sieve-result.c | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/src/lib-sieve/sieve-result.c b/src/lib-sieve/sieve-result.c
+index 3c896f2..fc75063 100644
+--- src/lib-sieve/sieve-result.c
++++ src/lib-sieve/sieve-result.c
+@@ -969,7 +969,14 @@ static int _sieve_result_implicit_keep
+
+ rac = rac->next;
+ }
++ } else if ( !rollback ) {
++ act_keep.location = kac->action.location;
++ act_keep.mail = kac->action.mail;
++ if ( kac->seffects != NULL )
++ rsef_first = kac->seffects->first_effect;
++ }
+
++ if (rsef_first == NULL) {
+ /* Apply any implicit side effects if applicable */
+ if ( !rollback && hash_table_is_created(result->action_contexts) ) {
+ struct sieve_result_action_context *actctx;
+@@ -980,11 +987,6 @@ static int _sieve_result_implicit_keep
+ if ( actctx != NULL && actctx->seffects != NULL )
+ rsef_first = actctx->seffects->first_effect;
+ }
+- } else if ( !rollback ) {
+- act_keep.location = kac->action.location;
+- act_keep.mail = kac->action.mail;
+- if ( kac->seffects != NULL )
+- rsef_first = kac->seffects->first_effect;
+ }
+
+ /* Start keep action */