diff --git a/ChangeLog b/ChangeLog index 4b48dc1a9..6525eaff1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,18 @@ +2010-01-12 Ludovic Marcotte + + * SoObjects/SOGo/NSString+Utilities.m + We retain the autoreleased strings static variable + to avoir random issues with the -fromCSSIdentifier method + + * Updated the Moz guide for the updateLink part of + the updates.php script. + +2010-01-11 Ludovic Marcotte + + * UI/Contacts/UIxContactFolderActions.m (-importVcardData:): + We now support multiple vCards in the same file during + the import process + 2010-01-08 Ludovic Marcotte * SoObjects/SOGo/LDAPSource.{h,m} - bindFields is now diff --git a/Documentation/SOGo Mozilla Thunderbird Configuration.odt b/Documentation/SOGo Mozilla Thunderbird Configuration.odt index 4ba568f97..c4bfccd67 100644 Binary files a/Documentation/SOGo Mozilla Thunderbird Configuration.odt and b/Documentation/SOGo Mozilla Thunderbird Configuration.odt differ diff --git a/SoObjects/SOGo/NSString+Utilities.m b/SoObjects/SOGo/NSString+Utilities.m index 128159130..9f2a67d06 100644 --- a/SoObjects/SOGo/NSString+Utilities.m +++ b/SoObjects/SOGo/NSString+Utilities.m @@ -317,6 +317,7 @@ static int cssEscapingCount; strings = [NSArray arrayWithObjects: @"_U_", @"_D_", @"_H_", @"_A_", @"_S_", @"_C_", @"_CO_", @"_SP_", nil]; + [strings retain]; cssEscapingStrings = [strings asPointersOfObjects]; characters = [NSArray arrayWithObjects: @"_", @".", @"#", @"@", @"*", @":", diff --git a/UI/Contacts/UIxContactFolderActions.m b/UI/Contacts/UIxContactFolderActions.m index 94a47e541..c8081fd5c 100644 --- a/UI/Contacts/UIxContactFolderActions.m +++ b/UI/Contacts/UIxContactFolderActions.m @@ -194,13 +194,27 @@ - (int) importVcardData: (NSString *) vcardData { - NGVCard *card; + NSArray *allCards; int rc; rc = 0; - card = [NGVCard parseSingleFromSource: vcardData]; - if ([self importVcard: card]) - rc = 1; + allCards = [NGVCard parseFromSource: vcardData]; + + if (allCards && [allCards count]) + { + int i; + + for (i = 0; i < [allCards count]; i++) + { + if (![self importVcard: [allCards objectAtIndex: i]]) + { + rc = 0; + break; + } + else + rc++; + } + } return rc; }