Monotone-Parent: ef8d14f35a0201fb30074fc2e88eab645eadb392

Monotone-Revision: 6ac69e11d0bffd5ce9515e9bedac3e73c6e08938

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2009-10-07T13:20:16
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2009-10-07 13:20:16 +00:00
parent 08a897780e
commit 3bbd9c25b4
2 changed files with 24 additions and 7 deletions
+8
View File
@@ -1,3 +1,11 @@
2009-10-07 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Appointments/SOGoAppointmentFolders.m
(_fetchPersonalFolders:withChannel:): we now skip unexisting
folders declared in the list of web folder ids to avoid problems.
When such id is found, it is also reported in the logs to inform
the administrator of this inconsistency.
2009-10-06 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* SoObjects/Mailer/SOGoMailFolder.m (_appendMessageData:usingId):
@@ -29,6 +29,8 @@
#import <NGObjWeb/WOContext+SoObjects.h>
#import <NGObjWeb/WORequest+So.h>
#import <NGObjWeb/NSException+HTTP.h>
#import <NGExtensions/NSObject+Logs.h>
#import <GDLAccess/EOAdaptorChannel.h>
#import <SaxObjC/XMLNamespaces.h>
@@ -309,20 +311,27 @@
isWebRequest = [[context request] handledByDefaultHandler];
error = [super _fetchPersonalFolders: sql withChannel: fc];
webCalendarIds = [self webCalendarIds];
max = [webCalendarIds count];
if (!error && max)
if (!error)
{
webCalendarIds = [self webCalendarIds];
max = [webCalendarIds count];
for (count = 0; count < max; count++)
{
name = [webCalendarIds objectAtIndex: count];
if (isWebRequest)
{
old = [subFolders objectForKey: name];
folder = [SOGoWebAppointmentFolder objectWithName: name
inContainer: self];
[folder setOCSPath: [old ocsPath]];
[subFolders setObject: folder forKey: name];
if (old)
{
folder = [SOGoWebAppointmentFolder objectWithName: name
inContainer: self];
[folder setOCSPath: [old ocsPath]];
[subFolders setObject: folder forKey: name];
}
else
[self errorWithFormat: @"webcalendar inconsistency: folder with"
@" name '%@' was not found in the database,"
@" conversion skipped", name];
}
else
[subFolders removeObjectForKey: name];