dovecot-2.0-pigeonhole: Made child error handlers inherit master...
pigeonhole at rename-it.nl
pigeonhole at rename-it.nl
Sat Jan 16 00:07:40 EET 2010
details: http://hg.rename-it.nl/dovecot-2.0-pigeonhole/rev/7888438a2fe7
changeset: 1205:7888438a2fe7
user: Stephan Bosch <stephan at rename-it.nl>
date: Fri Jan 15 16:46:45 2010 +0100
description:
Made child error handlers inherit master_log status from parent.
diffstat:
src/lib-sieve/sieve-error-private.h | 4 ++++
src/lib-sieve/sieve-error.c | 22 +++++++++++++++-------
2 files changed, 19 insertions(+), 7 deletions(-)
diffs (67 lines):
diff -r 079c69045afc -r 7888438a2fe7 src/lib-sieve/sieve-error-private.h
--- a/src/lib-sieve/sieve-error-private.h Thu Jan 14 10:21:34 2010 +0100
+++ b/src/lib-sieve/sieve-error-private.h Fri Jan 15 16:46:45 2010 +0100
@@ -40,6 +40,10 @@
void sieve_error_handler_init
(struct sieve_error_handler *ehandler, pool_t pool, unsigned int max_errors);
+void sieve_error_handler_init_from_parent
+ (struct sieve_error_handler *ehandler, pool_t pool,
+ struct sieve_error_handler *parent);
+
/*
* Direct handler calls
*/
diff -r 079c69045afc -r 7888438a2fe7 src/lib-sieve/sieve-error.c
--- a/src/lib-sieve/sieve-error.c Thu Jan 14 10:21:34 2010 +0100
+++ b/src/lib-sieve/sieve-error.c Fri Jan 15 16:46:45 2010 +0100
@@ -245,7 +245,7 @@
*/
void sieve_error_handler_init
- (struct sieve_error_handler *ehandler, pool_t pool, unsigned int max_errors)
+(struct sieve_error_handler *ehandler, pool_t pool, unsigned int max_errors)
{
ehandler->pool = pool;
ehandler->refcount = 1;
@@ -255,6 +255,18 @@
ehandler->warnings = 0;
}
+void sieve_error_handler_init_from_parent
+(struct sieve_error_handler *ehandler, pool_t pool, struct sieve_error_handler *parent)
+{
+ i_assert( parent != NULL );
+
+ sieve_error_handler_init(ehandler, pool, parent->max_errors);
+
+ ehandler->handler.log_master = parent->log_master;
+ ehandler->handler.log_info = parent->log_info;
+ ehandler->handler.log_debug = parent->log_debug;
+}
+
void sieve_error_handler_ref(struct sieve_error_handler *ehandler)
{
if ( ehandler == NULL || ehandler->pool == NULL ) return;
@@ -881,9 +893,7 @@
ehandler->location = p_strdup(pool, location);
ehandler->prefix = p_strdup(pool, prefix);
- sieve_error_handler_init(&ehandler->handler, pool, parent->max_errors);
- ehandler->handler.log_info = parent->log_info;
- ehandler->handler.log_debug = parent->log_debug;
+ sieve_error_handler_init_from_parent(&ehandler->handler, pool, parent);
ehandler->handler.verror = sieve_prefix_verror;
ehandler->handler.vwarning = sieve_prefix_vwarning;
@@ -1002,9 +1012,7 @@
ehandler->format = format;
p_array_init(&ehandler->table, pool, 10);
- sieve_error_handler_init(&ehandler->handler, pool, parent->max_errors);
- ehandler->handler.log_info = parent->log_info;
- ehandler->handler.log_debug = parent->log_debug;
+ sieve_error_handler_init_from_parent(&ehandler->handler, pool, parent);
entry = array_append_space(&ehandler->table);
entry->key = '$';
More information about the dovecot-cvs
mailing list