diff --git a/src/lib-sieve/sieve-actions.c b/src/lib-sieve/sieve-actions.c
index 1cfa0f2415f2df73c17ce59942a1a9c3b0eb6ae4..1001c12f2f1bd4caf28081c8c08e979bd4bc40e1 100644
--- a/src/lib-sieve/sieve-actions.c
+++ b/src/lib-sieve/sieve-actions.c
@@ -529,6 +529,8 @@ static bool act_store_execute
 		keywords = act_store_keywords_create(aenv, &trans->keywords, trans->box);
 
 		mailbox_save_set_flags(save_ctx, trans->flags, keywords);
+	} else {
+		mailbox_save_copy_flags(save_ctx, mail);
 	}
 
 	if ( mailbox_copy(&save_ctx, mail) < 0 ) {