diff options
author | Mathieu Hordesseaux <mathieu@adopteunmec.com> | 2016-09-28 19:20:19 +0200 |
---|---|---|
committer | Mathieu Hordesseaux <mathieu@adopteunmec.com> | 2016-10-03 16:32:12 +0200 |
commit | fe8749eae68fbcde9bc953a4c1c0b626f5f186cb (patch) | |
tree | 397f50a638bbda03e5479f0ef359b939d164f2c5 /components/script/dom | |
parent | c7e1a575a5225ccfb00a38fb50e052d986c0a78d (diff) | |
download | servo-fe8749eae68fbcde9bc953a4c1c0b626f5f186cb.tar.gz servo-fe8749eae68fbcde9bc953a4c1c0b626f5f186cb.zip |
Make readystatechange fire more often (fixes#13481)
Diffstat (limited to 'components/script/dom')
-rw-r--r-- | components/script/dom/xmlhttprequest.rs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/components/script/dom/xmlhttprequest.rs b/components/script/dom/xmlhttprequest.rs index 24ee2c28d36..0d21f9026fc 100644 --- a/components/script/dom/xmlhttprequest.rs +++ b/components/script/dom/xmlhttprequest.rs @@ -974,9 +974,16 @@ impl XMLHttpRequest { *self.response.borrow_mut() = partial_response; if !self.sync.get() { if self.ready_state.get() == XMLHttpRequestState::HeadersReceived { - self.change_ready_state(XMLHttpRequestState::Loading); - return_if_fetch_was_terminated!(); + self.ready_state.set(XMLHttpRequestState::Loading); } + let global = self.global(); + let event = Event::new( + global.r(), + atom!("readystatechange"), + EventBubbles::DoesNotBubble, + EventCancelable::Cancelable); + event.fire(self.upcast()); + return_if_fetch_was_terminated!(); self.dispatch_response_progress_event(atom!("progress")); } }, |