aboutsummaryrefslogtreecommitdiffstats
path: root/src/ajax.js
diff options
context:
space:
mode:
authorRichard Gibson <richard.gibson@gmail.com>2012-10-03 08:26:01 -0400
committerDave Methvin <dave.methvin@gmail.com>2012-10-03 21:07:50 -0400
commitda3ff3afe4d8421ae4ad04d6653f04ed6d7768e3 (patch)
treec1c71c271421d4adbd52fd2035ac4e9f034a106d /src/ajax.js
parentebf4d43011b7a6add9ded38b4322163f8b030cb6 (diff)
downloadjquery-da3ff3afe4d8421ae4ad04d6653f04ed6d7768e3.tar.gz
jquery-da3ff3afe4d8421ae4ad04d6653f04ed6d7768e3.zip
Fix #12637: restore 1.8.1 ajax crossDomain logic. Close gh-944.
Diffstat (limited to 'src/ajax.js')
-rw-r--r--src/ajax.js9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/ajax.js b/src/ajax.js
index 5e1fb2d94..2be654a85 100644
--- a/src/ajax.js
+++ b/src/ajax.js
@@ -580,9 +580,12 @@ jQuery.extend({
// A cross-domain request is in order when we have a protocol:host:port mismatch
if ( s.crossDomain == null ) {
- parts = rurl.exec( s.url.toLowerCase() ) || false;
- s.crossDomain = parts && ( parts.join(":") + ( parts[ 3 ] ? "" : parts[ 1 ] === "http:" ? 80 : 443 ) ) !==
- ( ajaxLocParts.join(":") + ( ajaxLocParts[ 3 ] ? "" : ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) );
+ parts = rurl.exec( s.url.toLowerCase() );
+ s.crossDomain = !!( parts &&
+ ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
+ ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? 80 : 443 ) ) !=
+ ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? 80 : 443 ) ) )
+ );
}
// Convert data if not already a string