Make readystatechange fire more often (fixes#13481)

This commit is contained in:
Mathieu Hordesseaux 2016-09-28 19:20:19 +02:00
parent c7e1a575a5
commit fe8749eae6
2 changed files with 11 additions and 4 deletions

View file

@ -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"));
}
},