From 23c8b1877c476e604c920662e24df67fa71fe2de Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Sat, 14 Jan 2017 16:12:56 +0200 Subject: [PATCH] lib-storage: Add struct mail_user.namespaces_created This makes it easier to determine in mail_namespaces_added hook if the namespaces being added are the initial ones or later ones. --- src/lib-storage/mail-namespace.c | 1 + src/lib-storage/mail-user.h | 3 +++ 2 files changed, 4 insertions(+) diff --git a/src/lib-storage/mail-namespace.c b/src/lib-storage/mail-namespace.c index 670afa8ef3..1800746e31 100644 --- a/src/lib-storage/mail-namespace.c +++ b/src/lib-storage/mail-namespace.c @@ -388,6 +388,7 @@ int mail_namespaces_init_finish(struct mail_namespace *namespaces, *error_r = t_strdup(namespaces->user->error); return -1; } + namespaces->user->namespaces_created = TRUE; return 0; } diff --git a/src/lib-storage/mail-user.h b/src/lib-storage/mail-user.h index 7a3ec8fcfa..de69503895 100644 --- a/src/lib-storage/mail-user.h +++ b/src/lib-storage/mail-user.h @@ -72,6 +72,9 @@ struct mail_user { unsigned int autocreated:1; /* mail_user_init() has been called */ unsigned int initialized:1; + /* The initial namespaces have been created and + hook_mail_namespaces_created() has been called. */ + unsigned int namespaces_created:1; /* SET_STR_VARS in user's all settings have been expanded. This happens near the beginning of the user initialization, so this is rarely needed to be checked. */