From 2ce85f6c5c17214019041ddd9f5713acdebdc5e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Amor=20Garc=C3=ADa?= Date: Fri, 17 Jul 2015 15:46:33 +0200 Subject: [PATCH 1/2] oc-mail: Added [MAPIStoreFolder getPidTagDisplayName:inMemCtx:] This getter is necessary to decode folder names in utf7 encoding. --- OpenChange/MAPIStoreMailFolder.m | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/OpenChange/MAPIStoreMailFolder.m b/OpenChange/MAPIStoreMailFolder.m index 3e24145c1..f63392828 100644 --- a/OpenChange/MAPIStoreMailFolder.m +++ b/OpenChange/MAPIStoreMailFolder.m @@ -257,6 +257,16 @@ static Class SOGoMailFolderK, MAPIStoreMailFolderK, MAPIStoreOutboxFolderK; return MAPISTORE_SUCCESS; } + +- (int) getPidTagDisplayName: (void **) data + inMemCtx: (TALLOC_CTX *) memCtx +{ + NSString *displayName = [[sogoObject displayName] stringByDecodingImap4FolderName]; + *data = [displayName asUnicodeInMemCtx: memCtx]; + + return MAPISTORE_SUCCESS; +} + - (EOQualifier *) nonDeletedQualifier { static EOQualifier *nonDeletedQualifier = nil; From 959b4e015da7531bb09ee90e07964de87114c91e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Amor=20Garc=C3=ADa?= Date: Mon, 20 Jul 2015 14:56:29 +0200 Subject: [PATCH 2/2] [SOgoMailFolder displayName] decodes IMAP4 --- OpenChange/MAPIStoreMailFolder.m | 10 ---------- SoObjects/Mailer/SOGoMailFolder.m | 2 +- 2 files changed, 1 insertion(+), 11 deletions(-) diff --git a/OpenChange/MAPIStoreMailFolder.m b/OpenChange/MAPIStoreMailFolder.m index f63392828..3e24145c1 100644 --- a/OpenChange/MAPIStoreMailFolder.m +++ b/OpenChange/MAPIStoreMailFolder.m @@ -257,16 +257,6 @@ static Class SOGoMailFolderK, MAPIStoreMailFolderK, MAPIStoreOutboxFolderK; return MAPISTORE_SUCCESS; } - -- (int) getPidTagDisplayName: (void **) data - inMemCtx: (TALLOC_CTX *) memCtx -{ - NSString *displayName = [[sogoObject displayName] stringByDecodingImap4FolderName]; - *data = [displayName asUnicodeInMemCtx: memCtx]; - - return MAPISTORE_SUCCESS; -} - - (EOQualifier *) nonDeletedQualifier { static EOQualifier *nonDeletedQualifier = nil; diff --git a/SoObjects/Mailer/SOGoMailFolder.m b/SoObjects/Mailer/SOGoMailFolder.m index c65c6c43c..671a6caf6 100644 --- a/SoObjects/Mailer/SOGoMailFolder.m +++ b/SoObjects/Mailer/SOGoMailFolder.m @@ -1553,7 +1553,7 @@ _compareFetchResultsByMODSEQ (id entry1, id entry2, void *data) - (NSString *) displayName { - return [self relativeImap4Name]; + return [[self relativeImap4Name] stringByDecodingImap4FolderName]; } - (NSDictionary *) davIMAPFieldsTable