changeset 8487:cee696a95320 HEAD

Call next hook_mail_namespaces_created in correct order.
author Timo Sirainen <tss@iki.fi>
date Mon, 24 Nov 2008 00:08:03 +0200
parents 23620e05e7c8
children 072edbdb8102
files src/plugins/autocreate/autocreate-plugin.c src/plugins/trash/trash-plugin.c
diffstat 2 files changed, 15 insertions(+), 19 deletions(-) [+]
line wrap: on
line diff
--- a/src/plugins/autocreate/autocreate-plugin.c	Mon Nov 24 00:06:15 2008 +0200
+++ b/src/plugins/autocreate/autocreate-plugin.c	Mon Nov 24 00:08:03 2008 +0200
@@ -55,11 +55,11 @@
 static void
 autocreate_mail_namespaces_created(struct mail_namespace *namespaces)
 {
+	autocreate_mailboxes(namespaces);
+	autosubscribe_mailboxes(namespaces);
+
 	if (autocreate_next_hook_mail_namespaces_created != NULL)
 		autocreate_next_hook_mail_namespaces_created(namespaces);
-
-	autocreate_mailboxes(namespaces);
-	autosubscribe_mailboxes(namespaces);
 }
 
 void autocreate_plugin_init(void)
--- a/src/plugins/trash/trash-plugin.c	Mon Nov 24 00:06:15 2008 +0200
+++ b/src/plugins/trash/trash-plugin.c	Mon Nov 24 00:08:03 2008 +0200
@@ -302,29 +302,25 @@
 	struct trash_user *tuser;
 	const char *env;
 
-	if (trash_next_hook_mail_namespaces_created != NULL)
-		trash_next_hook_mail_namespaces_created(namespaces);
-
 	env = getenv("TRASH");
 	if (env == NULL) {
 		if (getenv("DEBUG") != NULL)
 			i_info("trash: No trash setting - plugin disabled");
-		return;
-	}
+	} else if (quota_set == NULL) {
+		i_error("trash plugin: quota plugin not initialized");
+	} else {
+		tuser = p_new(user->pool, struct trash_user, 1);
+		tuser->module_ctx.super = user->v;
+		MODULE_CONTEXT_SET(user, trash_user_module, tuser);
 
-	if (quota_set == NULL) {
-		i_error("trash plugin: quota plugin not initialized");
-		return;
+		if (read_configuration(user, env) == 0) {
+			trash_next_quota_test_alloc = quota_set->test_alloc;
+			quota_set->test_alloc = trash_quota_test_alloc;
+		}
 	}
 
-	tuser = p_new(user->pool, struct trash_user, 1);
-	tuser->module_ctx.super = user->v;
-	MODULE_CONTEXT_SET(user, trash_user_module, tuser);
-
-	if (read_configuration(user, env) == 0) {
-		trash_next_quota_test_alloc = quota_set->test_alloc;
-		quota_set->test_alloc = trash_quota_test_alloc;
-	}
+	if (trash_next_hook_mail_namespaces_created != NULL)
+		trash_next_hook_mail_namespaces_created(namespaces);
 }
 
 void trash_plugin_init(void)