diff --git a/ActiveSync/SOGoMailObject+ActiveSync.m b/ActiveSync/SOGoMailObject+ActiveSync.m index 6b2e1b03a..3dbc74828 100644 --- a/ActiveSync/SOGoMailObject+ActiveSync.m +++ b/ActiveSync/SOGoMailObject+ActiveSync.m @@ -1071,9 +1071,15 @@ struct GlobalObjectId { if ([[[context request] headerForKey: @"MS-ASProtocolVersion"] isEqualToString: @"14.0"] || [[[context request] headerForKey: @"MS-ASProtocolVersion"] isEqualToString: @"14.1"]) { + id value; NSString *reference; - reference = [[[[self mailHeaders] objectForKey: @"references"] componentsSeparatedByString: @" "] objectAtIndex: 0]; + value = [[self mailHeaders] objectForKey: @"references"]; + + if ([value isKindOfClass: [NSArray class]]) + reference = [[[value objectAtIndex: 0] componentsSeparatedByString: @" "] objectAtIndex: 0]; + else + reference = [[value componentsSeparatedByString: @" "] objectAtIndex: 0]; if ([reference length] > 0) [s appendFormat: @"%@", [[reference dataUsingEncoding: NSUTF8StringEncoding] activeSyncRepresentationInContext: context]]; diff --git a/NEWS b/NEWS index dacaf978b..ecd03ee5c 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,7 @@ Enhancements Bug fixes - numerous EAS fixes when connections are dropped before the EAS client receives the response (#3058, #2849) + - correctly handle the References header over EAS (#3365) 2.3.2 (2015-09-16) ------------------