dovecot-2.0-pigeonhole: Multiscript: fixed duplicate implicit ke...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Wed Aug 11 17:55:19 EEST 2010


details:   http://hg.rename-it.nl/dovecot-2.0-pigeonhole/rev/90cec7ef7373
changeset: 1363:90cec7ef7373
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Wed Aug 11 16:55:11 2010 +0200
description:
Multiscript: fixed duplicate implicit keep caused by erroneous execution state update.

diffstat:

 src/lib-sieve/sieve.c |  8 ++------
 1 files changed, 2 insertions(+), 6 deletions(-)

diffs (39 lines):

diff -r 89756b38a8c6 -r 90cec7ef7373 src/lib-sieve/sieve.c
--- a/src/lib-sieve/sieve.c	Wed Aug 11 14:27:09 2010 +0200
+++ b/src/lib-sieve/sieve.c	Wed Aug 11 16:55:11 2010 +0200
@@ -453,7 +453,6 @@
 
 	int status;
 	bool active;
-	bool ended;
 	bool keep;
 
 	struct ostream *teststream;
@@ -508,8 +507,6 @@
 	} else {
 		if ( keep != NULL ) *keep = TRUE;
 	}
-		
-	mscript->active = ( mscript->active && *keep );
 
 	sieve_result_mark_executed(mscript->result);
 }
@@ -528,8 +525,6 @@
 		else
 			if ( keep != NULL ) *keep = TRUE;			
 	}
-	
-	mscript->active = ( mscript->active && *keep );
 }
 
 bool sieve_multiscript_run
@@ -553,7 +548,8 @@
 		else
 			sieve_multiscript_execute(mscript, ehandler, &mscript->keep);
 
-		if ( final ) mscript->active = FALSE;
+		mscript->active =
+			( mscript->active && mscript->keep && !final && mscript->status > 0 );
 	}	
 
 	if ( mscript->status <= 0 )


More information about the dovecot-cvs mailing list