dovecot-2.2-pigeonhole: lib-sieve: code dumper: Fixed handling o...

pigeonhole at rename-it.nl pigeonhole at rename-it.nl
Tue Jun 17 18:58:33 UTC 2014


details:   http://hg.rename-it.nl/dovecot-2.2-pigeonhole/rev/54ccf712b9d0
changeset: 1868:54ccf712b9d0
user:      Stephan Bosch <stephan at rename-it.nl>
date:      Tue Jun 17 20:48:50 2014 +0200
description:
lib-sieve: code dumper: Fixed handling of undefined extensions.
Reported by Coverity.

diffstat:

 src/lib-sieve/sieve-code-dumper.c |  19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

diffs (31 lines):

diff -r d4a2d592b6f9 -r 54ccf712b9d0 src/lib-sieve/sieve-code-dumper.c
--- a/src/lib-sieve/sieve-code-dumper.c	Tue Jun 17 20:44:47 2014 +0200
+++ b/src/lib-sieve/sieve-code-dumper.c	Tue Jun 17 20:48:50 2014 +0200
@@ -280,15 +280,20 @@
 					break;
 				}
 
-				sieve_code_dumpf(denv, "%s", sieve_extension_name(ext));
+				if ( ext->def == NULL) {
+					sieve_code_dumpf(denv, "[undefined]");
 
-				if ( ext->def != NULL && ext->def->code_dump != NULL ) {
-					sieve_code_descend(denv);
-					if ( !ext->def->code_dump(ext, denv, address) ) {
-						success = FALSE;
-						break;
+				} else {
+					sieve_code_dumpf(denv, "%s", sieve_extension_name(ext));
+
+					if (ext->def->code_dump != NULL ) {
+						sieve_code_descend(denv);
+						if ( !ext->def->code_dump(ext, denv, address) ) {
+							success = FALSE;
+							break;
+						}
+						sieve_code_ascend(denv);
 					}
-					sieve_code_ascend(denv);
 				}
 			} T_END;
 		}


More information about the dovecot-cvs mailing list