diff options
author | Richard Gibson <richard.gibson@gmail.com> | 2012-10-03 08:26:01 -0400 |
---|---|---|
committer | Dave Methvin <dave.methvin@gmail.com> | 2012-10-03 21:07:50 -0400 |
commit | da3ff3afe4d8421ae4ad04d6653f04ed6d7768e3 (patch) | |
tree | c1c71c271421d4adbd52fd2035ac4e9f034a106d /src/ajax.js | |
parent | ebf4d43011b7a6add9ded38b4322163f8b030cb6 (diff) | |
download | jquery-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.js | 9 |
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 |