aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjaubourg <j@ubourg.net>2013-01-06 00:41:08 +0100
committerDave Methvin <dave.methvin@gmail.com>2013-01-07 10:34:11 -0500
commitf6df0301c81fca4b52eb2667f33a1469f2cac41d (patch)
treeb4b974f7a99d9285a111c907e029d7563d8aaf18
parent17049c73bc5bf1a41cce4a5b648f55da7bbac533 (diff)
downloadjquery-f6df0301c81fca4b52eb2667f33a1469f2cac41d.tar.gz
jquery-f6df0301c81fca4b52eb2667f33a1469f2cac41d.zip
Fixes comments per @rwldrn. Makes sure failing requests from local protocol yields status 404, not 0.
-rw-r--r--src/ajax/xhr.js16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/ajax/xhr.js b/src/ajax/xhr.js
index 9569c7064..72703a0b1 100644
--- a/src/ajax/xhr.js
+++ b/src/ajax/xhr.js
@@ -8,7 +8,8 @@ var xhrSupported = jQuery.ajaxSettings.xhr(),
xhrSuccessStatus = {
// file protocol always yields status code 0, assume 200
0: 200,
- // IE - #1450: sometimes returns 1223 when it should be 204
+ // Support: IE9
+ // #1450: sometimes IE returns 1223 when it should be 204
1223: 204
};
@@ -23,7 +24,6 @@ jQuery.ajaxTransport(function( options ) {
send: function( headers, complete ) {
var i,
xhr = options.xhr();
- // Open the socket
xhr.open( options.type, options.url, options.async, options.username, options.password );
// Apply custom fields if provided
if ( options.xhrFields ) {
@@ -55,13 +55,18 @@ jQuery.ajaxTransport(function( options ) {
if ( type === "abort" ) {
xhr.abort();
} else if ( type === "error" ) {
- complete( xhr.status, xhr.statusText );
+ complete(
+ // file protocol always yields status 0, assume 404
+ xhr.status || 404,
+ xhr.statusText
+ );
} else {
complete(
xhrSuccessStatus[ xhr.status ] || xhr.status,
xhr.statusText,
- // IE - #11426: When requesting binary data, IE9 will
- // throw an exception on any attempt to access responseText
+ // Support: IE9
+ // #11426: When requesting binary data, IE9 will throw an exception
+ // on any attempt to access responseText
typeof xhr.responseText === "string" ? {
text: xhr.responseText
} : undefined,
@@ -81,7 +86,6 @@ jQuery.ajaxTransport(function( options ) {
// handled in jQuery.ajax (so no try/catch here)
xhr.send( options.hasContent && options.data || null );
},
-
abort: function() {
if ( callback ) {
callback();