Skip to content

Commit

Permalink
Fix a bug with AudioBufferSourceNode
Browse files Browse the repository at this point in the history
#226

It seems as though AudioBufferSourceNode can get caught in cases where the seek and duration are negative 
"Failed to execute 'start' on 'AudioBufferSourceNode': The duration provided (-0.17) is less than the minimum bound (0)"

We can protect this by defaulting to 0 when we seek or set a duration below 0.
  • Loading branch information
fabioelia authored Nov 10, 2016
1 parent 6d82d15 commit afa56ea
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/howler.core.js
Original file line number Diff line number Diff line change
Expand Up @@ -623,8 +623,8 @@
}

// Determine how long to play for and where to start playing.
var seek = sound._seek > 0 ? sound._seek : self._sprite[sprite][0] / 1000;
var duration = ((self._sprite[sprite][0] + self._sprite[sprite][1]) / 1000) - seek;
var seek = Math.max(0, sound._seek > 0 ? sound._seek : self._sprite[sprite][0] / 1000);
var duration = Math.max(0, ((self._sprite[sprite][0] + self._sprite[sprite][1]) / 1000) - seek);
var timeout = (duration * 1000) / Math.abs(sound._rate);

// Update the parameters of the sound
Expand Down

0 comments on commit afa56ea

Please sign in to comment.