From 2782a6f3b15fca4876835902c2c472dcff20a26a Mon Sep 17 00:00:00 2001 From: martinandert Date: Sun, 10 Sep 2017 23:53:04 +0200 Subject: [PATCH] timeRangesToArray: handle ranges argument being undefined This occurs when the media element initially has no src set. --- src/shared/dom.js | 3 ++- test/js/samples/media-bindings/expected-bundle.js | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/shared/dom.js b/src/shared/dom.js index 65c38061fff0..a96f3f29e087 100644 --- a/src/shared/dom.js +++ b/src/shared/dom.js @@ -103,6 +103,7 @@ export function toNumber(value) { } export function timeRangesToArray(ranges) { + if (!ranges) return []; var array = []; for (let i = 0; i < ranges.length; i += 1) { array.push({ start: ranges.start(i), end: ranges.end(i) }); @@ -149,4 +150,4 @@ export function setInputType(input, type) { export function setStyle(node, key, value) { node.style.setProperty(key, value); -} \ No newline at end of file +} diff --git a/test/js/samples/media-bindings/expected-bundle.js b/test/js/samples/media-bindings/expected-bundle.js index 631999398cff..5acac422cc2b 100644 --- a/test/js/samples/media-bindings/expected-bundle.js +++ b/test/js/samples/media-bindings/expected-bundle.js @@ -34,6 +34,7 @@ function removeListener(node, event, handler) { } function timeRangesToArray(ranges) { + if (!ranges) return []; var array = []; for (let i = 0; i < ranges.length; i += 1) { array.push({ start: ranges.start(i), end: ranges.end(i) });