From 78eaa955b35a123c490f115a6f699e099f1a634a Mon Sep 17 00:00:00 2001
From: Stephan Bosch <stephan@rename-it.nl>
Date: Tue, 27 Nov 2007 19:38:26 +0100
Subject: [PATCH] Store action seems to work properly now.

---
 sieve/tests/actions.sieve     | 4 ++--
 src/lib-sieve/sieve-actions.c | 6 +++++-
 src/sieve-bin/sieve-exec.c    | 7 ++++---
 3 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/sieve/tests/actions.sieve b/sieve/tests/actions.sieve
index eeb7b7668..142a450bd 100644
--- a/sieve/tests/actions.sieve
+++ b/sieve/tests/actions.sieve
@@ -12,7 +12,7 @@ if address :contains "to" "vestingbar" {
 #redirect "nico@example.nl";
 #redirect "stephan@example.com";
 
-#fileinto "INBOX.frop";
-#fileinto "INBOX";
+fileinto "frop";
+fileinto "INBOX";
 keep;
 discard;
diff --git a/src/lib-sieve/sieve-actions.c b/src/lib-sieve/sieve-actions.c
index e20ba4982..aab85a330 100644
--- a/src/lib-sieve/sieve-actions.c
+++ b/src/lib-sieve/sieve-actions.c
@@ -188,10 +188,12 @@ static bool act_store_commit
 {  
 	struct act_store_transaction *trans = 
 		(struct act_store_transaction *) tr_context;
-	bool status = mailbox_transaction_commit(&trans->mail_trans);
+	bool status = mailbox_transaction_commit(&trans->mail_trans) == 0;
 	
 	act_store_log_status(trans, aenv->msgdata, FALSE, status);
 	
+	mailbox_close(&trans->box);
+	
 	return status;
 }
 
@@ -206,6 +208,8 @@ static void act_store_rollback
 	  mailbox_transaction_rollback(&trans->mail_trans);
   
   act_store_log_status(trans, aenv->msgdata, TRUE, success);
+  
+  mailbox_close(&trans->box);
 }
 
 
diff --git a/src/sieve-bin/sieve-exec.c b/src/sieve-bin/sieve-exec.c
index b52939b6e..b48d20707 100644
--- a/src/sieve-bin/sieve-exec.c
+++ b/src/sieve-bin/sieve-exec.c
@@ -106,9 +106,10 @@ int main(int argc, char **argv)
     }
 
 	env_put(t_strdup_printf("NAMESPACE_1=%s", "maildir:/home/stephan/Maildir"));
-	env_put("NAMESPACE_1_PREFIX=INBOX.");
-	env_put("NAMESPACE_1_LIST=yes");
-	env_put("NAMESPACE_1_SUBSCRIPTIONS=yes");
+	env_put("NAMESPACE_1_INBOX=1");
+	env_put("NAMESPACE_1_LIST=1");
+	env_put("NAMESPACE_1_SEP=.");
+	env_put("NAMESPACE_1_SUBSCRIPTIONS=1");
 
 	namespaces_pool = namespaces_init();
 	
-- 
GitLab