Skip to content

Commit 42ed23d

Browse files
authored
And direct path for schema not changing. (#379)
To simplify the flow a little but also avoid doing any work in cases where the redirect doesn't change the scheme, and an explicit path for that in the redirection validations.
1 parent 79653ec commit 42ed23d

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

Sources/Core/GTMSessionFetcher.m

+8
Original file line numberDiff line numberDiff line change
@@ -2546,6 +2546,14 @@ + (nullable NSURL *)redirectURLWithOriginalRequestURL:(nullable NSURL *)original
25462546

25472547
NSString *originalScheme = originalRequestURL.scheme;
25482548
NSString *redirectScheme = redirectRequestURL.scheme;
2549+
2550+
// If no change in scheme with redirect, just return the redirect.
2551+
if (originalScheme != nil &&
2552+
redirectScheme != nil &&
2553+
[originalScheme caseInsensitiveCompare:redirectScheme] == NSOrderedSame) {
2554+
return redirectRequestURL;
2555+
}
2556+
25492557
BOOL insecureToSecureRedirect =
25502558
(originalScheme != nil && [originalScheme caseInsensitiveCompare:@"http"] == NSOrderedSame &&
25512559
redirectScheme != nil && [redirectScheme caseInsensitiveCompare:@"https"] == NSOrderedSame);

0 commit comments

Comments
 (0)