diff --git a/OpenChange/MAPIStoreMailContext.m b/OpenChange/MAPIStoreMailContext.m index 83dc70e1f..79ea0b62e 100644 --- a/OpenChange/MAPIStoreMailContext.m +++ b/OpenChange/MAPIStoreMailContext.m @@ -24,6 +24,7 @@ #import #import #import +#import #import #import #import @@ -156,7 +157,7 @@ MakeDisplayFolderName (NSString *folderName) stringData = [NSString stringWithFormat: @"%@%@", urlBase, [currentName stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; context->url = [stringData asUnicodeInMemCtx: context]; - stringData = [[currentName substringFromIndex: 6] fromCSSIdentifier]; + stringData = [[[currentName substringFromIndex: 6] fromCSSIdentifier] stringByDecodingImap4FolderName]; context->name = [stringData asUnicodeInMemCtx: context]; context->main_folder = false; context->role = MAPISTORE_MAIL_ROLE; @@ -188,7 +189,7 @@ MakeDisplayFolderName (NSString *folderName) if ([newFolder create]) mapistoreURI = [NSString stringWithFormat: @"sogo://%@:%@@mail/%@/", userName, userName, - [folderName stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; + [[folderName stringByEncodingImap4FolderName] stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; else mapistoreURI = nil; [MAPIApp setUserContext: nil]; diff --git a/OpenChange/MAPIStoreMailFolder.m b/OpenChange/MAPIStoreMailFolder.m index f06508962..3aa86688d 100644 --- a/OpenChange/MAPIStoreMailFolder.m +++ b/OpenChange/MAPIStoreMailFolder.m @@ -36,6 +36,7 @@ #import #import #import +#import #import #import #import @@ -177,7 +178,7 @@ static Class SOGoMailFolderK, MAPIStoreMailFolderK, MAPIStoreOutboxFolderK; if (folderName) { nameInContainer = [NSString stringWithFormat: @"folder%@", - [folderName asCSSIdentifier]]; + [[folderName stringByEncodingImap4FolderName] asCSSIdentifier]]; newFolder = [SOGoMailFolderK objectWithName: nameInContainer inContainer: sogoObject]; if ([newFolder create]) @@ -315,7 +316,7 @@ static Class SOGoMailFolderK, MAPIStoreMailFolderK, MAPIStoreOutboxFolderK; if (![subfolderName hasPrefix: @"folder"]) abort (); - strippedName = [subfolderName substringFromIndex: 6]; + strippedName = [[subfolderName substringFromIndex: 6] stringByDecodingImap4FolderName]; [representation appendFormat: @"/%@", strippedName]; return representation;