diff --git a/dom/media/webaudio/AudioBufferSourceNode.cpp b/dom/media/webaudio/AudioBufferSourceNode.cpp index 7a1d9cc80f59..e09dc079264e 100644 --- a/dom/media/webaudio/AudioBufferSourceNode.cpp +++ b/dom/media/webaudio/AudioBufferSourceNode.cpp @@ -702,9 +702,9 @@ void AudioBufferSourceNode::Start(double aWhen, double aOffset, const Optional& aDuration, ErrorResult& aRv) { - if (!WebAudioUtils::IsTimeValid(aWhen) || + if (!WebAudioUtils::IsTimeValid(aWhen) || aOffset < 0 || (aDuration.WasPassed() && !WebAudioUtils::IsTimeValid(aDuration.Value()))) { - aRv.Throw(NS_ERROR_DOM_NOT_SUPPORTED_ERR); + aRv.Throw(NS_ERROR_RANGE_ERR); return; } @@ -805,7 +805,7 @@ void AudioBufferSourceNode::Stop(double aWhen, ErrorResult& aRv) { if (!WebAudioUtils::IsTimeValid(aWhen)) { - aRv.Throw(NS_ERROR_DOM_NOT_SUPPORTED_ERR); + aRv.Throw(NS_ERROR_RANGE_ERR); return; }