From 1d95cdae7c6681a7a0924814ec3d4c9962e5251b Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Thu, 6 Sep 2012 18:29:08 +0000 Subject: [PATCH] Monotone-Parent: 0b736cc980075f71e643c2c71341dee25f434fb9 Monotone-Revision: a1a4f8e01241e22f0964fc0320be28504ae6e68b Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2012-09-06T18:29:08 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ OpenChange/MAPIStoreCalendarMessage.m | 10 +++++----- OpenChange/MAPIStoreMailContext.m | 5 +++-- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index dfc907eb4..c1ec6a976 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2012-09-06 Wolfgang Sourdeau + * OpenChange/MAPIStoreMailContext.m + (+listContextsForUser:withTDBIndexing:inMemCtx:): we escape the + url string of non-ascii folder names. + * OpenChange/MAPIStoreMailVolatileMessage.m (FillMessageHeadersFromProperties): build a recipient list for the "from" field from the list stored in the value for "orig" in the diff --git a/OpenChange/MAPIStoreCalendarMessage.m b/OpenChange/MAPIStoreCalendarMessage.m index afdbb98b0..6aea0687a 100644 --- a/OpenChange/MAPIStoreCalendarMessage.m +++ b/OpenChange/MAPIStoreCalendarMessage.m @@ -210,12 +210,12 @@ static Class NSArrayK; - (int) getPidTagMessageClass: (void **) data inMemCtx: (TALLOC_CTX *) memCtx { - SOGoUser *owner; + // SOGoUser *owner; - owner = [[self userContext] sogoUser]; - if ([masterEvent userAsAttendee: owner]) - *data = talloc_strdup (memCtx, "IPM.Schedule.Meeting.Request"); - else + // owner = [[self userContext] sogoUser]; + // if ([masterEvent userAsAttendee: owner]) + // *data = talloc_strdup (memCtx, "IPM.Schedule.Meeting.Request"); + // else *data = talloc_strdup (memCtx, "IPM.Appointment"); return MAPISTORE_SUCCESS; diff --git a/OpenChange/MAPIStoreMailContext.m b/OpenChange/MAPIStoreMailContext.m index 43212e513..8d1cea8cc 100644 --- a/OpenChange/MAPIStoreMailContext.m +++ b/OpenChange/MAPIStoreMailContext.m @@ -130,7 +130,7 @@ MakeDisplayFolderName (NSString *folderName) { context = talloc_zero (memCtx, struct mapistore_contexts_list); stringData = [NSString stringWithFormat: @"%@%@", urlBase, - folderName[count]]; + [folderName[count] stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; context->url = [stringData asUnicodeInMemCtx: context]; /* remove "folder" prefix */ stringData = MakeDisplayFolderName (folderName[count]); @@ -153,7 +153,8 @@ MakeDisplayFolderName (NSString *folderName) { context = talloc_zero (memCtx, struct mapistore_contexts_list); currentName = [secondaryFolders objectAtIndex: count]; - stringData = [NSString stringWithFormat: @"%@%@", urlBase, currentName]; + stringData = [NSString stringWithFormat: @"%@%@", + urlBase, [currentName stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]]; context->url = [stringData asUnicodeInMemCtx: context]; stringData = [[currentName substringFromIndex: 6] fromCSSIdentifier]; context->name = [stringData asUnicodeInMemCtx: context];