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