mirror of
https://github.com/inverse-inc/sogo.git
synced 2026-04-18 11:38:53 +00:00
merge of '484dfbcd9e1364cb46bc486c8a0669b0d2729d37'
and 'd85ac88023025021e4352537636d2fc8a8d43667' Monotone-Parent: 484dfbcd9e1364cb46bc486c8a0669b0d2729d37 Monotone-Parent: d85ac88023025021e4352537636d2fc8a8d43667 Monotone-Revision: 9cddfa451166e89060a244252b01a2d1e4cc52be Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2011-10-14T19:08:58 Monotone-Branch: ca.inverse.sogo
This commit is contained in:
@@ -1,3 +1,10 @@
|
||||
2011-10-14 Ludovic Marcotte <lmarcotte@inverse.ca>
|
||||
|
||||
* SoObjects/SOGo/SOGoGCSFolder.m (setRoles:forUser:..)
|
||||
We now even cache "None" roles.
|
||||
* SoObjects/Mailer/SOGoMailObject.m (fetchCoreInfos)
|
||||
We now handle correctly untagged responses.
|
||||
|
||||
2011-10-13 Francis Lachapelle <flachapelle@inverse.ca>
|
||||
|
||||
* Tools/SOGoToolUserPreferences.m (-run): added possibility to
|
||||
|
||||
@@ -217,6 +217,7 @@ static BOOL debugSoParts = NO;
|
||||
- (id) fetchCoreInfos
|
||||
{
|
||||
id msgs;
|
||||
int i;
|
||||
|
||||
if (!coreInfos)
|
||||
{
|
||||
@@ -224,8 +225,21 @@ static BOOL debugSoParts = NO;
|
||||
if (heavyDebug)
|
||||
[self logWithFormat: @"M: %@", msgs];
|
||||
msgs = [msgs valueForKey: @"fetch"];
|
||||
|
||||
// We MUST honor untagged IMAP responses here otherwise we could
|
||||
// return really borken and nasty results.
|
||||
if ([msgs count] > 0)
|
||||
coreInfos = [msgs objectAtIndex: 0];
|
||||
{
|
||||
for (i = 0; i < [msgs count]; i++)
|
||||
{
|
||||
coreInfos = [msgs objectAtIndex: i];
|
||||
|
||||
if ([[coreInfos objectForKey: @"uid"] intValue] == [[self nameInContainer] intValue])
|
||||
break;
|
||||
|
||||
coreInfos = nil;
|
||||
}
|
||||
}
|
||||
[coreInfos retain];
|
||||
}
|
||||
|
||||
|
||||
@@ -1637,11 +1637,13 @@ static NSArray *childRecordFields = nil;
|
||||
[newRoles removeObject: SOGoRole_AuthorizedSubscriber];
|
||||
[newRoles removeObject: SOGoRole_None];
|
||||
objectPath = [objectPathArray componentsJoinedByString: @"/"];
|
||||
[self _cacheRoles: newRoles forUser: uid
|
||||
forObjectAtPath: objectPath];
|
||||
|
||||
if (![newRoles count])
|
||||
[newRoles addObject: SOGoRole_None];
|
||||
|
||||
[self _cacheRoles: newRoles forUser: uid
|
||||
forObjectAtPath: objectPath];
|
||||
|
||||
[self _commitRoles: newRoles forUID: aUID forObject: objectPath];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user