Skip to content

Commit 56b5ec5

Browse files
aveladjoeyparrish
authored andcommitted
fix: Duplicate timelineregion* events fired for the same event id (#8013)
Fixes #8009
1 parent e95e162 commit 56b5ec5

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

lib/media/region_timeline.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -102,13 +102,14 @@ shaka.media.RegionTimeline = class extends shaka.util.FakeEventTarget {
102102
* @private
103103
*/
104104
findSimilarRegion_(region) {
105+
const isDiffNegligible = (a, b) => Math.abs(a - b) < 0.1;
105106
for (const existing of this.regions_) {
106107
// The same scheme ID and time range means that it is similar-enough to
107108
// be the same region.
108109
const isSimilar = existing.schemeIdUri == region.schemeIdUri &&
109-
existing.id == region.id &&
110-
existing.startTime == region.startTime &&
111-
existing.endTime == region.endTime;
110+
existing.id == region.id &&
111+
isDiffNegligible(existing.startTime, region.startTime) &&
112+
isDiffNegligible(existing.endTime, region.endTime);
112113

113114
if (isSimilar) {
114115
return existing;

0 commit comments

Comments
 (0)