Index: sdk/lib/html/dart2js/html_dart2js.dart |
diff --git a/sdk/lib/html/dart2js/html_dart2js.dart b/sdk/lib/html/dart2js/html_dart2js.dart |
index 5e169881d3a5889652485ba975ca5a6e0c53be93..7bbd8de8d2117191854f41132ef2ad6e302c198d 100644 |
--- a/sdk/lib/html/dart2js/html_dart2js.dart |
+++ b/sdk/lib/html/dart2js/html_dart2js.dart |
@@ -24024,18 +24024,25 @@ class _HttpRequestUtils { |
// Helper for factory HttpRequest.get |
static HttpRequest get(String url, |
- onSuccess(HttpRequest request), |
+ onComplete(HttpRequest request), |
bool withCredentials) { |
final request = new HttpRequest(); |
request.open('GET', url, true); |
request.withCredentials = withCredentials; |
- // Status 0 is for local XHR request. |
request.on.readyStateChange.add((e) { |
- if (request.readyState == HttpRequest.DONE && |
- (request.status == 200 || request.status == 0)) { |
- onSuccess(request); |
+ if (request.readyState == HttpRequest.DONE) { |
+ // TODO(efortuna): Previously HttpRequest.get only invoked the callback |
+ // when request.status was 0 or 200. This |
+ // causes two problems 1) request.status = 0 for ANY local XHR request |
+ // (file found or not found) 2) the user facing function claims that the |
+ // callback is called on completion of the request, regardless of |
+ // status. Because the new event model is coming in soon, rather than |
+ // fixing the callbacks version, we just need to revisit the desired |
+ // behavior when we're using streams/futures. |
+ // Status 0 is for local XHR request. |
+ onComplete(request); |
} |
}); |