dovecot-2.2-pigeonhole: lib-sieve: Improved efficiency of readin...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Mon Aug 17 21:56:26 UTC 2015


details:   http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/c5ccf2e6d3ad
changeset: 2089:c5ccf2e6d3ad
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Mon Aug 17 23:56:21 2015 +0200
description:
lib-sieve: Improved efficiency of reading a string-list operand that is actually a single string.

diffstat:

 src/lib-sieve/sieve-code.c |  15 ++++++++++-----
 1 files changed, 10 insertions(+), 5 deletions(-)

diffs (26 lines):

diff -r 652aec3e8440 -r c5ccf2e6d3ad src/lib-sieve/sieve-code.c
--- a/src/lib-sieve/sieve-code.c	Mon Aug 17 23:51:35 2015 +0200
+++ b/src/lib-sieve/sieve-code.c	Mon Aug 17 23:56:21 2015 +0200
@@ -800,12 +800,17 @@
 			return SIEVE_EXEC_FAILURE;
 		}
 
-		if ( (ret=intf->read(renv, oprnd, address, NULL)) <= 0 )
-			return ret;
+		if ( strlist_r == NULL ) {
+			if ( (ret=intf->read(renv, oprnd, address, NULL)) <= 0 )
+				return ret;
+		} else {
+			string_t *stritem;
+			if ( (ret=intf->read(renv, oprnd, address, &stritem)) <= 0 )
+				return ret;
 
-		if ( strlist_r != NULL )
-			*strlist_r = sieve_code_stringlist_create
-				(renv, oprnd->address, 1, *address);
+			*strlist_r = sieve_single_stringlist_create
+				(renv, stritem, FALSE);
+		}
 		return SIEVE_EXEC_OK;
 	}
 


More information about the dovecot-cvs mailing list