From a915ee9b151b9cc4ddb1e9b1d3635e0731b9fe68 Mon Sep 17 00:00:00 2001 From: Stephan Bosch <stephan@rename-it.nl> Date: Fri, 14 May 2010 11:23:55 +0200 Subject: [PATCH] Fixed potential memory leak in generator. --- src/lib-sieve/sieve-generator.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/lib-sieve/sieve-generator.c b/src/lib-sieve/sieve-generator.c index 755701510..25c9ee823 100644 --- a/src/lib-sieve/sieve-generator.c +++ b/src/lib-sieve/sieve-generator.c @@ -427,17 +427,20 @@ bool sieve_generator_run /* Load */ if ( ext->def != NULL && ext->def->generator_load != NULL && - !ext->def->generator_load(ext, &gentr->genenv) ) - return FALSE; + !ext->def->generator_load(ext, &gentr->genenv) ) { + result = FALSE; + } } /* Generate code */ - if ( !sieve_generate_block - (&gentr->genenv, sieve_ast_root(gentr->genenv.ast))) - result = FALSE; - else if ( topmost ) - sieve_binary_activate(*sbin); + if ( result ) { + if ( !sieve_generate_block + (&gentr->genenv, sieve_ast_root(gentr->genenv.ast))) + result = FALSE; + else if ( topmost ) + sieve_binary_activate(*sbin); + } /* Cleanup */ -- GitLab