diff --git a/NEWS b/NEWS index 012643350..456486015 100644 --- a/NEWS +++ b/NEWS @@ -50,6 +50,7 @@ Bug fixes - [web] cards list not accessible when changing address book in expanded card view - [web] added missing subject to junk/not junk reports - [web] fixed file uploader URL in mail editor + - [web] fixed decoding of spaces in URL-encoded parameters (+) - [eas] hebrew folders encoding problem using EAS (#4240) - [eas] avoid sync requests for shared folders every second (#4275) diff --git a/UI/SOGoUI/UIxComponent.m b/UI/SOGoUI/UIxComponent.m index bb334d480..b04cab702 100644 --- a/UI/SOGoUI/UIxComponent.m +++ b/UI/SOGoUI/UIxComponent.m @@ -173,6 +173,7 @@ static SoProduct *commonProduct = nil; - (void) _parseQueryString: (NSString *) _s { NSEnumerator *e; + NSMutableString *urlEncodedValue; NSString *part; NSRange r; NSString *key, *value; @@ -190,8 +191,9 @@ static SoProduct *commonProduct = nil; else { key = [[part substringToIndex:r.location] stringByUnescapingURL]; - value = [[part substringFromIndex:(r.location + r.length)] - stringByUnescapingURL]; + urlEncodedValue = [NSMutableString stringWithString: [part substringFromIndex:(r.location + r.length)]]; + [urlEncodedValue replaceString: @"+" withString: @" "]; + value = [urlEncodedValue stringByUnescapingURL]; } if (key && value) [queryParameters setObject:value forKey:key];