(fix) Update settings of active user only

Fixes #3988
This commit is contained in:
Francis Lachapelle
2017-06-28 10:57:18 -04:00
parent a30efc6cc7
commit a7d07b2a12

View File

@@ -316,7 +316,7 @@ static SoSecurityManager *sm = nil;
NSMutableDictionary *folderDisplayNames;
NSMutableArray *subscribedReferences;
SOGoUserSettings *settings;
NSString *currentKey;
NSString *activeUser, *currentKey;
SOGoUser *ownerUser;
NSException *error;
id o;
@@ -332,6 +332,7 @@ static SoSecurityManager *sm = nil;
error = nil; /* we ignore non-DB errors at this time... */
dirty = NO;
activeUser = [[context activeUser] login];
ownerUser = [SOGoUser userWithLogin: owner];
settings = [ownerUser userSettings];
@@ -352,7 +353,9 @@ static SoSecurityManager *sm = nil;
// remove it from the current list.
[subscribedReferences removeObject: currentKey];
[folderDisplayNames removeObjectForKey: currentKey];
dirty = YES;
if ([owner isEqualToString: activeUser])
// Synchronize settings only if the subscription is owned by the active user
dirty = YES;
}
}