From: Timo Sirainen Date: Thu, 22 Jul 2010 15:43:36 +0000 (+0100) Subject: doveadm mailbox status: Fixed listing non-ASCII mailbox names. X-Git-Tag: 2.0.rc4~50 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b52d75b299887def0793621e01a5836971fef65f;p=thirdparty%2Fdovecot%2Fcore.git doveadm mailbox status: Fixed listing non-ASCII mailbox names. --- diff --git a/src/doveadm/doveadm-mail-mailbox-status.c b/src/doveadm/doveadm-mail-mailbox-status.c index e8cfb9889a..cf2eecc80b 100644 --- a/src/doveadm/doveadm-mail-mailbox-status.c +++ b/src/doveadm/doveadm-mail-mailbox-status.c @@ -4,6 +4,7 @@ #include "str.h" #include "mail-namespace.h" #include "mail-storage.h" +#include "imap-utf7.h" #include "doveadm-print.h" #include "doveadm-mail.h" #include "doveadm-mail-list-iter.h" @@ -110,9 +111,15 @@ status_mailbox(struct status_cmd_context *ctx, const struct mailbox_info *info) struct mailbox *box; struct mailbox_status status; uint8_t mailbox_guid[MAIL_GUID_128_SIZE]; + string_t *mailbox_name = t_str_new(128); + + if (imap_utf7_to_utf8(info->name, mailbox_name) < 0) { + str_truncate(mailbox_name, 0); + str_append(mailbox_name, info->name); + } if (doveadm_mailbox_find_and_sync(ctx->ctx.cur_mail_user, - info->name, &box) < 0) { + str_c(mailbox_name), &box) < 0) { ctx->ctx.failed = TRUE; return; }