Ignore errors of nonexistent special mailboxes

Fixes #4177
pull/237/head
Francis Lachapelle 2017-06-28 14:01:52 -04:00
parent ee68cf6ed5
commit 9f96639e6f
3 changed files with 17 additions and 4 deletions

1
NEWS
View File

@ -22,6 +22,7 @@ Bug fixes
- [web] respect SOGoLanguage and SOGoSupportedLanguages (#4169)
- [web] fixed adding list members with multiple email addresses
- [web] fixed responsive condition of login page (960px to 1023px)
- [web] don't throw errors when accessing nonexistent special mailboxes (#4177)
- [core] newly subscribed calendars are excluded from freebusy (#3354)
- [core] don't update subscriptions when owner is not the active user (#3988)
- [core] strip cr during LDIF import process (#4172)

View File

@ -714,9 +714,17 @@
error = [co expunge];
if (error)
{
data = [NSDictionary dictionaryWithObject: [self labelForKey: @"Unable to expunge folder." inContext: context]
forKey: @"message"];
response = [self responseWithStatus: 500 andJSONRepresentation: data];
if ([co isSpecialFolder])
{
// Special folder probably doesn't exist; ignore error.
response = [self responseWithStatus: 204];
}
else
{
data = [NSDictionary dictionaryWithObject: [self labelForKey: @"Unable to expunge folder." inContext: context]
forKey: @"message"];
response = [self responseWithStatus: 500 andJSONRepresentation: data];
}
}
else
{
@ -730,7 +738,7 @@
response = [self responseWithStatus: 200 andJSONRepresentation: data];
}
else
response = [self responseWithStatus: 200];
response = [self responseWithStatus: 204];
}
return response;

View File

@ -767,6 +767,10 @@
if (data != nil)
response = [self responseWithStatus: 200 andJSONRepresentation: data];
else if ([folder isSpecialFolder])
{
response = [self responseWithStatus: 204];
}
else
{
data = [NSDictionary dictionaryWithObjectsAndKeys: