Open Bug 1091312 Opened 10 years ago Updated 2 years ago

Throw correct exceptions on AudioBufferSourceNode start() and stop()

Categories

(Core :: Web Audio, defect, P3)

x86_64
Linux
defect

Tracking

()

ASSIGNED

People

(Reporter: padenot, Assigned: padenot)

Details

(Keywords: dev-doc-needed, Whiteboard: [spec])

Attachments

(2 files, 1 obsolete file)

Attachment #8513934 - Flags: review?(ehsan.akhgari)
/r/59 - Bug 1091312 - Throw InvalidAccessError when non-finite floats are passed to AudioBufferSourceNode.{start, stop}, or if offset is greater than the buffer length. r=ehsan

Pull down this commit:

hg pull review -r 25cae40162467a53f8ad9370722780386a0ba8c5
Trying the new stuff, do the review here if you're not adventurous, heh.
Attachment #8513938 - Flags: review?(ehsan.akhgari)
Assignee: nobody → padenot
Status: NEW → ASSIGNED
https://reviewboard.mozilla.org/r/59/#review29

::: dom/media/webaudio/AudioBufferSourceNode.cpp
(Diff revision 1)
> +      (mBuffer && aOffset > mBuffer->Length() / mBuffer->SampleRate())) {

Nit: please wrap the greater than check in parentheses.

::: dom/media/webaudio/test/test_audioBufferSourceNodeParams.html
(Diff revision 1)
> +      s.start(-1);

Did you mean to also add a check for Infinity, as the comment suggests?

::: dom/media/webaudio/test/test_audioBufferSourceNodeParams.html
(Diff revision 1)
> +  [-1, buffer.duration + 1, NaN, Infinity].forEach(function(v) {

Please test -Infinity as well.

::: dom/media/webaudio/test/test_audioBufferSourceNodeParams.html
(Diff revision 1)
> +  [-1, Infinity, NaN].forEach(function(v) {

Here too.

::: dom/media/webaudio/test/test_audioBufferSourceNodeParams.html
(Diff revision 1)
> +  [-1, Infinity, NaN].forEach(function(v) {

And here.

::: dom/webidl/AudioBufferSourceNode.webidl
(Diff revision 1)
> -    void start(optional double when = 0, optional double grainOffset = 0,
> +    void start(optional unrestricted double when = 0, optional unrestricted double grainOffset = 0,

I assume you're going to change the spec accordingly too.
Attachment #8513938 - Flags: review?(ehsan.akhgari)
Attachment #8513934 - Flags: review?(ehsan.akhgari) → review+
Attachment #8513934 - Attachment is obsolete: true
Attachment #8618502 - Flags: review+
Paul - this is r+'d - what's blocking landing it?  Thanks
Rank: 25
Flags: needinfo?(padenot)
Priority: -- → P2
Whiteboard: [spec]
We need to talk at TPAC about this.
Flags: needinfo?(padenot)
Mass change P2->P3 to align with new Mozilla triage process.
Priority: P2 → P3
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: