diff options
author | bors-servo <metajack+bors@gmail.com> | 2014-11-06 19:00:29 -0700 |
---|---|---|
committer | bors-servo <metajack+bors@gmail.com> | 2014-11-06 19:00:29 -0700 |
commit | 338a9c3f054db0244185c3d85b47e427b6070e37 (patch) | |
tree | 0d6ec5df7507dd7c468e0f52614d2f3fef85da40 /components/script | |
parent | f775f12fe996718af94951c3c2457d896a213d96 (diff) | |
parent | 504fdbfac404b8eceb05f06dcb9243f362cc4ace (diff) | |
download | servo-338a9c3f054db0244185c3d85b47e427b6070e37.tar.gz servo-338a9c3f054db0244185c3d85b47e427b6070e37.zip |
auto merge of #3917 : mukilan/servo/xhr-status-async, r=jdm
Fixes #3877
Diffstat (limited to 'components/script')
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 869820e0ca6..da3c069c1f4 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -890,8 +890,8 @@ impl<'a> PrivateXMLHttpRequestHelpers for JSRef<'a, XMLHttpRequest> { }, LoadingMsg(_, partial_response) => { // For synchronous requests, this should not fire any events, and just store data - // Part of step 13, send() (processing response body) - // XXXManishearth handle errors, if any (substep 1) + // Part of step 11, send() (processing response body) + // XXXManishearth handle errors, if any (substep 2) *self.response.borrow_mut() = partial_response; if !self.sync.get() { @@ -903,22 +903,23 @@ impl<'a> PrivateXMLHttpRequestHelpers for JSRef<'a, XMLHttpRequest> { } }, DoneMsg(_) => { - // Part of step 13, send() (processing response end of file) - // XXXManishearth handle errors, if any (substep 1) + assert!(self.ready_state.get() == HeadersReceived || + self.ready_state.get() == Loading || + self.sync.get()); - // Substep 3 - if self.ready_state.get() == Loading || self.sync.get() { - // Subsubsteps 2-4 - self.send_flag.set(false); - self.change_ready_state(XHRDone); - return_if_fetch_was_terminated!(); - // Subsubsteps 5-7 - self.dispatch_response_progress_event("progress".to_string()); - return_if_fetch_was_terminated!(); - self.dispatch_response_progress_event("load".to_string()); - return_if_fetch_was_terminated!(); - self.dispatch_response_progress_event("loadend".to_string()); - } + // Part of step 11, send() (processing response end of file) + // XXXManishearth handle errors, if any (substep 2) + + // Subsubsteps 5-7 + self.send_flag.set(false); + self.change_ready_state(XHRDone); + return_if_fetch_was_terminated!(); + // Subsubsteps 10-12 + self.dispatch_response_progress_event("progress".to_string()); + return_if_fetch_was_terminated!(); + self.dispatch_response_progress_event("load".to_string()); + return_if_fetch_was_terminated!(); + self.dispatch_response_progress_event("loadend".to_string()); }, ErroredMsg(_, e) => { self.send_flag.set(false); |