Side navigation
Ticket #6748: 0001-Treat-an-xhr.status-of-0-as-successful-only-in-Opera.patch
File 0001-Treat-an-xhr.status-of-0-as-successful-only-in-Opera.patch, 1.3 KB (added by benjamn, July 01, 2010 01:02AM UTC)
Patch to make the Opera special case more Opera-specific.
From 75d4b59a4c72ab6fde3aa1e815947639213ea9da Mon Sep 17 00:00:00 2001
From: Ben Newman
Date: Wed, 30 Jun 2010 22:25:17 +0000
Subject: [PATCH] Treat an xhr.status of 0 as successful only in Opera, where 0 really means 304. In Chrome Mac, for example, an xhr.status of 0 means an error occurred.
---
src/ajax.js | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/ajax.js b/src/ajax.js
index 2c4f13c..42b74cf 100644
--- a/src/ajax.js
+++ b/src/ajax.js
@@ -627,9 +627,10 @@ jQuery.extend( jQuery.ajax, {
try {
// IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
return !xhr.status && location.protocol === "file:" ||
- // Opera returns 0 when status is 304
( xhr.status >= 200 && xhr.status < 300 ) ||
- xhr.status === 304 || xhr.status === 1223 || xhr.status === 0;
+ ( xhr.status === 304 || xhr.status === 1223 ||
+ // Opera returns 0 when status is 304
+ ( xhr.status === 0 && jQuery.browser.opera ) );
} catch(e) {}
return false;
@@ -649,7 +650,7 @@ jQuery.extend( jQuery.ajax, {
}
// Opera returns 0 when status is 304
- return xhr.status === 304 || xhr.status === 0;
+ return xhr.status === 304 || ( xhr.status === 0 && jQuery.browser.opera );
},
httpData: function( xhr, type, s ) {
--
1.5.4.3
Download in other formats:
Original Format
File 0001-Treat-an-xhr.status-of-0-as-successful-only-in-Opera.patch, 1.3 KB (added by benjamn, July 01, 2010 01:02AM UTC)
Patch to make the Opera special case more Opera-specific.
From 75d4b59a4c72ab6fde3aa1e815947639213ea9da Mon Sep 17 00:00:00 2001
From: Ben Newman
Date: Wed, 30 Jun 2010 22:25:17 +0000
Subject: [PATCH] Treat an xhr.status of 0 as successful only in Opera, where 0 really means 304. In Chrome Mac, for example, an xhr.status of 0 means an error occurred.
---
src/ajax.js | 7 ++++---
1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/ajax.js b/src/ajax.js
index 2c4f13c..42b74cf 100644
--- a/src/ajax.js
+++ b/src/ajax.js
@@ -627,9 +627,10 @@ jQuery.extend( jQuery.ajax, {
try {
// IE error sometimes returns 1223 when it should be 204 so treat it as success, see #1450
return !xhr.status && location.protocol === "file:" ||
- // Opera returns 0 when status is 304
( xhr.status >= 200 && xhr.status < 300 ) ||
- xhr.status === 304 || xhr.status === 1223 || xhr.status === 0;
+ ( xhr.status === 304 || xhr.status === 1223 ||
+ // Opera returns 0 when status is 304
+ ( xhr.status === 0 && jQuery.browser.opera ) );
} catch(e) {}
return false;
@@ -649,7 +650,7 @@ jQuery.extend( jQuery.ajax, {
}
// Opera returns 0 when status is 304
- return xhr.status === 304 || xhr.status === 0;
+ return xhr.status === 304 || ( xhr.status === 0 && jQuery.browser.opera );
},
httpData: function( xhr, type, s ) {
--
1.5.4.3