From 0683c506e098cacf4455cb89570e1cef4f9da9d5 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Wed, 7 May 2014 20:15:07 +0200 Subject: [PATCH] lib-sieve: Fixed indenting problem in runtime trace output. Also cleaned up the surrounding code a bit. --- src/lib-sieve/sieve-interpreter.c | 21 ++++++++++++--------- src/lib-sieve/sieve-interpreter.h | 2 +- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/lib-sieve/sieve-interpreter.c b/src/lib-sieve/sieve-interpreter.c index 4289dac5f..7d6ec0788 100644 --- a/src/lib-sieve/sieve-interpreter.c +++ b/src/lib-sieve/sieve-interpreter.c @@ -220,26 +220,29 @@ struct sieve_interpreter *sieve_interpreter_create_for_block ehandler, flags); } -void sieve_interpreter_free(struct sieve_interpreter **interp) +void sieve_interpreter_free(struct sieve_interpreter **_interp) { + struct sieve_interpreter *interp = *_interp; + struct sieve_runtime_env *renv = &interp->runenv; const struct sieve_interpreter_extension_reg *eregs; unsigned int ext_count, i; - sieve_runtime_trace_end(&((*interp)->runenv)); + interp->trace.indent = 0; + sieve_runtime_trace_end(renv); /* Signal registered extensions that the interpreter is being destroyed */ - eregs = array_get(&(*interp)->extensions, &ext_count); + eregs = array_get(&interp->extensions, &ext_count); for ( i = 0; i < ext_count; i++ ) { if ( eregs[i].intext != NULL && eregs[i].intext->free != NULL ) - eregs[i].intext->free(eregs[i].ext, *interp, eregs[i].context); + eregs[i].intext->free(eregs[i].ext, interp, eregs[i].context); } - sieve_binary_debug_reader_deinit(&(*interp)->dreader); - sieve_binary_unref(&(*interp)->runenv.sbin); - sieve_error_handler_unref(&(*interp)->runenv.ehandler); + sieve_binary_debug_reader_deinit(&interp->dreader); + sieve_binary_unref(&renv->sbin); + sieve_error_handler_unref(&renv->ehandler); - pool_unref(&((*interp)->pool)); - *interp = NULL; + pool_unref(&interp->pool); + *_interp = NULL; } /* diff --git a/src/lib-sieve/sieve-interpreter.h b/src/lib-sieve/sieve-interpreter.h index aa2e82af8..62fb9a814 100644 --- a/src/lib-sieve/sieve-interpreter.h +++ b/src/lib-sieve/sieve-interpreter.h @@ -25,7 +25,7 @@ struct sieve_interpreter *sieve_interpreter_create_for_block const struct sieve_message_data *msgdata, const struct sieve_script_env *senv, struct sieve_error_handler *ehandler, enum sieve_runtime_flags flags); -void sieve_interpreter_free(struct sieve_interpreter **interp); +void sieve_interpreter_free(struct sieve_interpreter **_interp); /* * Accessors -- GitLab