dovecot-2.0-pigeonhole: sieve: fixed debug mode; no messages wer...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Mon Aug 29 17:55:10 EEST 2011


details:   http://hg.rename-it.nl/dovecot-2.0-pigeonhole/rev/db043c016009
changeset: 1519:db043c016009
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Mon Aug 29 16:55:06 2011 +0200
description:
sieve: fixed debug mode; no messages were logged in some situations.

diffstat:

 src/lib-sieve-tool/sieve-tool.c |   1 +
 src/lib-sieve/sieve-error.c     |  14 ++++++++------
 src/lib-sieve/sieve-script.c    |   4 ++--
 3 files changed, 11 insertions(+), 8 deletions(-)

diffs (77 lines):

diff -r 04b4edd4bf6e -r db043c016009 src/lib-sieve-tool/sieve-tool.c
--- a/src/lib-sieve-tool/sieve-tool.c	Mon Aug 29 16:14:26 2011 +0200
+++ b/src/lib-sieve-tool/sieve-tool.c	Mon Aug 29 16:55:06 2011 +0200
@@ -517,6 +517,7 @@
 
 	ehandler = sieve_stderr_ehandler_create(svinst, 0);
 	sieve_error_handler_accept_infolog(ehandler, TRUE);
+	sieve_error_handler_accept_debuglog(ehandler, svinst->debug);
 
 	if ( (sbin = sieve_compile(svinst, filename, name, ehandler, NULL)) == NULL )
 		i_error("failed to compile sieve script '%s'", filename);
diff -r 04b4edd4bf6e -r db043c016009 src/lib-sieve/sieve-error.c
--- a/src/lib-sieve/sieve-error.c	Mon Aug 29 16:14:26 2011 +0200
+++ b/src/lib-sieve/sieve-error.c	Mon Aug 29 16:55:06 2011 +0200
@@ -144,13 +144,13 @@
 void sieve_direct_vdebug
 (struct sieve_instance *svinst, struct sieve_error_handler *ehandler,
 	unsigned int flags, const char *location, const char *fmt, va_list args)
-{ 
+{
 	if ( (flags & SIEVE_ERROR_FLAG_GLOBAL) != 0 &&
-		(ehandler == NULL || ehandler->parent == NULL) && 
+		(ehandler == NULL || ehandler->parent == NULL) &&
 		svinst->system_ehandler != ehandler &&
 		svinst->system_ehandler->vdebug != NULL ) {
 		va_list args_copy;
-	
+
 		VA_COPY(args_copy, args);
 
 		svinst->system_ehandler->vdebug
@@ -159,8 +159,8 @@
 
 	if ( ehandler == NULL ) return;
 
-	if ( ehandler->parent != NULL || ehandler->log_info ) {
-		if ( ehandler->vdebug != NULL )	
+	if ( ehandler->parent != NULL || ehandler->log_debug ) {
+		if ( ehandler->vdebug != NULL )
 			ehandler->vdebug(ehandler, flags, location, fmt, args);
 	}
 }
@@ -527,7 +527,7 @@
 	ehandler->svinst = svinst;
 	ehandler->refcount = 1;
 	ehandler->max_errors = max_errors;
-	
+
 	ehandler->errors = 0;
 	ehandler->warnings = 0;
 }
@@ -667,6 +667,8 @@
 	if ( prefix != NULL )
 		ehandler->prefix = p_strdup(pool, prefix);
 
+	ehandler->handler.log_debug = svinst->debug;
+
 	return &ehandler->handler;
 }
 
diff -r 04b4edd4bf6e -r db043c016009 src/lib-sieve/sieve-script.c
--- a/src/lib-sieve/sieve-script.c	Mon Aug 29 16:14:26 2011 +0200
+++ b/src/lib-sieve/sieve-script.c	Mon Aug 29 16:55:06 2011 +0200
@@ -138,11 +138,11 @@
 {
 	switch ( errno ) {
 	case ENOENT:
+		if ( svinst->debug )
+			sieve_sys_debug(svinst, "script file %s not found", t_abspath(path));
 		if ( error_r == NULL )
 			sieve_error(ehandler, name, "sieve script does not exist");
 		else {
-			if ( svinst->debug )
-				sieve_sys_debug(svinst, "script file %s not found", t_abspath(path));
 			*error_r = SIEVE_ERROR_NOT_FOUND;
 		}
 		break;


More information about the dovecot-cvs mailing list