From 8c56e2c025d9a36d788e266892d8b992ee28fbcb Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Tue, 21 Sep 2021 17:48:33 +0300 Subject: [PATCH] lib-storage: mailbox_verify_*name() - Add data stack frames This function can eat up quite a lot of data stack. --- src/lib-storage/mail-storage.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/src/lib-storage/mail-storage.c b/src/lib-storage/mail-storage.c index 60dc65ba19..3b92602ce4 100644 --- a/src/lib-storage/mail-storage.c +++ b/src/lib-storage/mail-storage.c @@ -1233,7 +1233,7 @@ mailbox_verify_name_prefix(struct mail_namespace *ns, const char **vnamep, return TRUE; } -int mailbox_verify_name(struct mailbox *box) +static int mailbox_verify_name_int(struct mailbox *box) { struct mail_namespace *ns = box->list->ns; const char *error, *vname = box->vname; @@ -1289,7 +1289,16 @@ int mailbox_verify_name(struct mailbox *box) return 0; } -static int mailbox_verify_existing_name(struct mailbox *box) +int mailbox_verify_name(struct mailbox *box) +{ + int ret; + T_BEGIN { + ret = mailbox_verify_name_int(box); + } T_END; + return ret; +} + +static int mailbox_verify_existing_name_int(struct mailbox *box) { const char *path; @@ -1317,6 +1326,15 @@ static int mailbox_verify_existing_name(struct mailbox *box) return 0; } +static int mailbox_verify_existing_name(struct mailbox *box) +{ + int ret; + T_BEGIN { + ret = mailbox_verify_existing_name_int(box); + } T_END; + return ret; +} + static bool mailbox_name_has_control_chars(const char *name) { const char *p; -- 2.47.3