aboutsummaryrefslogtreecommitdiffstats
path: root/src/ng/httpBackend.js
diff options
context:
space:
mode:
authorRafaƂ Jagoda2013-12-27 12:55:02 +0100
committerTobias Bosch2014-01-09 10:10:11 -0800
commit28fc80bba0107075ab371fd0a7634a38891626b2 (patch)
tree493e228fb06b3443b6808c373d07759d42aefb51 /src/ng/httpBackend.js
parentb6c42d5e8155edc9013bd531f553c278ce37c3c8 (diff)
downloadangular.js-28fc80bba0107075ab371fd0a7634a38891626b2.tar.bz2
fix($httpBackend): Allow status code 0 from any protocol
Android 4.1 stock browser also returns status code 0 when a template is loaded via `http` and the application is cached using appcache. Fixes #1356. Closes #5547.
Diffstat (limited to 'src/ng/httpBackend.js')
-rw-r--r--src/ng/httpBackend.js8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ng/httpBackend.js b/src/ng/httpBackend.js
index 565e1b12..d2806e3e 100644
--- a/src/ng/httpBackend.js
+++ b/src/ng/httpBackend.js
@@ -121,14 +121,14 @@ function createHttpBackend($browser, createXhr, $browserDefer, callbacks, rawDoc
}
function completeRequest(callback, status, response, headersString) {
- var protocol = urlResolve(url).protocol;
-
// cancel timeout and subsequent timeout promise resolution
timeoutId && $browserDefer.cancel(timeoutId);
jsonpDone = xhr = null;
- // fix status code for file protocol (it's always 0)
- status = (protocol == 'file' && status === 0) ? (response ? 200 : 404) : status;
+ // fix status code when it is 0 (0 status is undocumented).
+ // Occurs when accessing file resources.
+ // On Android 4.1 stock browser it occurs while retrieving files from application cache.
+ status = (status === 0) ? (response ? 200 : 404) : status;
// normalize IE bug (http://bugs.jquery.com/ticket/1450)
status = status == 1223 ? 204 : status;