From 260d7bb573b992419ba8e8121a369d3b5ed2e007 Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan.bosch@dovecot.fi>
Date: Tue, 14 May 2019 23:22:09 +0200
Subject: [PATCH] lib-sieve: sieve-error - Fix NULL value dereference in
 sieve_direct_logv().

Caused by recent event API changes.
---
 src/lib-sieve/sieve-error.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/lib-sieve/sieve-error.c b/src/lib-sieve/sieve-error.c
index c2699bd65..72d0ea5d4 100644
--- a/src/lib-sieve/sieve-error.c
+++ b/src/lib-sieve/sieve-error.c
@@ -100,7 +100,7 @@ void sieve_direct_logv(struct sieve_instance *svinst,
 {
 	if ((flags & SIEVE_ERROR_FLAG_GLOBAL) != 0 &&
 	    (ehandler == NULL || ehandler->parent == NULL) &&
-	    (!ehandler->master_log ||
+	    (ehandler == NULL || !ehandler->master_log ||
 	     (params->log_type > LOG_TYPE_INFO &&
 	      (flags & SIEVE_ERROR_FLAG_GLOBAL_MAX_INFO) != 0))) {
 		struct sieve_error_params new_params = *params;
@@ -117,7 +117,7 @@ void sieve_direct_logv(struct sieve_instance *svinst,
 
 		va_end(args_copy);
 
-		if (ehandler->master_log)
+		if (ehandler != NULL && ehandler->master_log)
 			return;
 	}
 
-- 
GitLab