Closed Bug 1020370 Opened 10 years ago Closed 9 years ago

WebAudio: Assertion failure: skipFracNum < 2147483647 (mBeginProcessing is wrong?)

Categories

(Core :: Web Audio, defect, P2)

x86_64
All
defect

Tracking

()

RESOLVED FIXED
mozilla44
Tracking Status
firefox44 --- fixed

People

(Reporter: posidron, Assigned: karlt)

References

Details

(Keywords: assertion, crash, testcase)

Attachments

(5 files, 1 obsolete file)

Attached file callstack (deleted) —
Could you retest this next time you're running an ASAN build? Thanks - I'm hoping it's fixed
Flags: needinfo?(cdiehl)
Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 7418.7575] 0x00007ff3bb61d91a in mozilla::dom::AudioBufferSourceNodeEngine::CopyFromInputBufferWithResampling (this=0x7ff2f2b7b680, aOutput=0x7ff30508b190, aChannels=1, aOffsetWithinBlock=0x7ff317ffa690, aAvailableInOutput=128, aCurrentPosition=0x7ff317ffa698, aBufferMax=16) at /mnt/ssd1/karl/moz/dev/dom/media/webaudio/AudioBufferSourceNode.cpp:274 (gdb) p /x skipFracNum $1 = 0xdc097ed5 (gdb) p inputLatency $2 = 4 (gdb) p leadTicks $3 = 13681.575461263204 (gdb) p ratioNum $4 = 44100 (gdb) p ratioDen $5 = 2147483647 (gdb) p /x ratioDen $6 = 0x7fffffff skipFracNum was 0xfffffffc before leadTicks * ratioNum was subtracted. ratioDen is the maximum, for the very slow playbackRate. I'll look at changing the assertion.
Assignee: nobody → karlt
Blocks: 913854
Flags: needinfo?(cdiehl)
OS: Mac OS X → All
This assertion no longer fails with this testcase, but there is still overflow in calculating skipFracNum from large ratioDen, which I'll address separately.
Attachment #8674600 - Flags: review?(padenot)
Attached patch crashtest (deleted) — Splinter Review
This causes even the new assert to fail.
Attachment #8674601 - Flags: review?(padenot)
ratioDen can be large when playbackRate is low. Subsample skipping is limited to uint32_t values supported by speex resampler.
Attachment #8674602 - Flags: review?(padenot)
Correct comment and s/max/min/.
Attachment #8674607 - Flags: review?(padenot)
Attachment #8674602 - Attachment is obsolete: true
Attachment #8674602 - Flags: review?(padenot)
Attachment #8674607 - Flags: review?(padenot) → review+
Attachment #8674601 - Flags: review?(padenot) → review+
Attachment #8674600 - Flags: review?(padenot) → review+
Rank: 20
Priority: -- → P2
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: