From c582d1515df3d338919662691b9dcdf7aa1ae31b Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan.bosch@dovecot.fi>
Date: Wed, 1 Nov 2017 22:54:05 +0100
Subject: [PATCH] managesieve: putscript command: Fixed parse error handling
 for save parser.

---
 src/managesieve/cmd-putscript.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/managesieve/cmd-putscript.c b/src/managesieve/cmd-putscript.c
index 1cfe138f3..af4dcb099 100644
--- a/src/managesieve/cmd-putscript.c
+++ b/src/managesieve/cmd-putscript.c
@@ -156,8 +156,13 @@ static bool cmd_putscript_finish_parsing(struct client_command_context *cmd)
 	/* <script literal> */
 	ret = managesieve_parser_read_args(ctx->save_parser, 0, 0, &args);
 	if (ret == -1 || client->output->closed) {
-		if (ctx->storage != NULL)
-			client_send_command_error(cmd, NULL);
+		if (ctx->storage != NULL) {
+			const char *msg;
+			bool fatal ATTR_UNUSED;
+
+			msg = managesieve_parser_get_error(ctx->save_parser, &fatal);
+			client_send_command_error(cmd, msg);
+		}
 		cmd_putscript_finish(ctx);
 		return TRUE;
 	}
-- 
GitLab