From: Timo Sirainen Date: Tue, 10 Nov 2009 02:03:15 +0000 (-0500) Subject: lib-lda: Log mailbox name using UTF-8, not mUTF-7. X-Git-Tag: 2.0.alpha3~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ed51404d355ae65d762cee68aefdbf900903a658;p=thirdparty%2Fdovecot%2Fcore.git lib-lda: Log mailbox name using UTF-8, not mUTF-7. --HG-- branch : HEAD --- diff --git a/src/lib-lda/Makefile.am b/src/lib-lda/Makefile.am index 5982142a77..c9763f9fd4 100644 --- a/src/lib-lda/Makefile.am +++ b/src/lib-lda/Makefile.am @@ -4,6 +4,7 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/src/lib \ -I$(top_srcdir)/src/lib-settings \ -I$(top_srcdir)/src/lib-master \ + -I$(top_srcdir)/src/lib-imap \ -I$(top_srcdir)/src/lib-mail \ -I$(top_srcdir)/src/lib-storage diff --git a/src/lib-lda/mail-deliver.c b/src/lib-lda/mail-deliver.c index d29a6e6abc..b8b5167bca 100644 --- a/src/lib-lda/mail-deliver.c +++ b/src/lib-lda/mail-deliver.c @@ -7,6 +7,7 @@ #include "str-sanitize.h" #include "var-expand.h" #include "message-address.h" +#include "imap-utf7.h" #include "lda-settings.h" #include "mail-storage.h" #include "mail-namespace.h" @@ -137,6 +138,17 @@ mailbox_open_or_create_synced(struct mail_deliver_context *ctx, return box; } +static const char *mailbox_name_get_printable(const char *mailbox_mutf7) +{ + string_t *str = t_str_new(128); + + if (imap_utf7_to_utf8(mailbox_mutf7, str) < 0) { + str_truncate(str, 0); + str_append(str, mailbox_mutf7); + } + return str_sanitize(str_c(str), 80); +} + int mail_deliver_save(struct mail_deliver_context *ctx, const char *mailbox, enum mail_flags flags, const char *const *keywords, struct mail_storage **storage_r) @@ -158,7 +170,7 @@ int mail_deliver_save(struct mail_deliver_context *ctx, const char *mailbox, if (default_save) ctx->tried_default_save = TRUE; - mailbox_name = str_sanitize(mailbox, 80); + mailbox_name = mailbox_name_get_printable(mailbox); box = mailbox_open_or_create_synced(ctx, mailbox, &ns, &errstr); if (box == NULL) { if (ns == NULL) {