aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlmediaelement.rs
diff options
context:
space:
mode:
authorFernando Jiménez Moreno <ferjmoreno@gmail.com>2018-12-12 16:52:37 +0100
committerFernando Jiménez Moreno <ferjmoreno@gmail.com>2018-12-12 16:52:37 +0100
commit707b490c0f1d5f09ac481ae903e349dd2ddd97c5 (patch)
tree31f383e0eda15903b36ba9220a09cc806e83c884 /components/script/dom/htmlmediaelement.rs
parent243b4e1a39c7f7feca71eb9fe8bd094059a2bdd5 (diff)
downloadservo-707b490c0f1d5f09ac481ae903e349dd2ddd97c5.tar.gz
servo-707b490c0f1d5f09ac481ae903e349dd2ddd97c5.zip
Signal EOS if media request fails
Diffstat (limited to 'components/script/dom/htmlmediaelement.rs')
-rw-r--r--components/script/dom/htmlmediaelement.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs
index 141ad5c86be..15d0090cba7 100644
--- a/components/script/dom/htmlmediaelement.rs
+++ b/components/script/dom/htmlmediaelement.rs
@@ -1614,12 +1614,16 @@ impl FetchResponseListener for HTMLMediaElementContext {
// https://html.spec.whatwg.org/multipage/#media-data-processing-steps-list
fn process_response_eof(&mut self, status: Result<ResourceFetchTiming, NetworkError>) {
+ let elem = self.elem.root();
if self.ignore_response {
- // An error was received previously, skip processing the payload.
+ // An error was received previously, skip processing the payload
+ // and notify the media backend that we are done pushing data.
+ if let Err(e) = elem.player.end_of_stream() {
+ warn!("Could not signal EOS to player {:?}", e);
+ }
return;
}
- let elem = self.elem.root();
if status.is_ok() {
if elem.ready_state.get() == ReadyState::HaveNothing {
// Make sure that we don't skip the HaveMetadata and HaveCurrentData