Closed
Bug 1187076
Opened 11 years ago
Closed 11 years ago
Assertion failure: mBitReader.numBitsLeft() [@mp4_demuxer::BitReader::ReadBits]
Categories
(Core :: Audio/Video: Playback, defect, P2)
Tracking
()
RESOLVED
FIXED
mozilla43
People
(Reporter: tsmith, Assigned: rillian)
References
Details
(Keywords: assertion, testcase)
Attachments
(3 files)
Assertion failure: mBitReader.numBitsLeft(), at /builds/slave/m-cen-l64-asan-d-0000000000000/build/src/media/libstagefright/binding/H264.cpp:29
| Reporter | ||
Comment 1•11 years ago
|
||
Updated•11 years ago
|
Assignee: nobody → jyavenard
Priority: -- → P2
Comment 3•11 years ago
|
||
that line can be removed as we test for the size just after.
| Assignee | ||
Comment 4•11 years ago
|
||
I don't think that's right. If we skip the assert, ReadBit() will return zero, the zero-count loop in ReadUE() can exhaust and we'd still MOZ_ASSERT(false) on line 74.
We either need some kind of error flag DecodeSPS can check at the end and report failure, or relax these to NS_WARNING so we still get debug information without failing the test. Depends how bad having zeroes in the SPS table is, I guess.
Comment 5•11 years ago
|
||
Probably the best solution would be to change ByteReader to print warnings and set an error flag. We can check the error flag outside of ByteReader before the destructor gets called. It is an error if nobody has checked the error flag before calling the destructor and we could assert in that case.
| Assignee | ||
Comment 6•11 years ago
|
||
Here's a minimal patch to convert the assert to a warning. Jean-Yves, is this what you had in mind?
Note I can't reproduce with the testcase, so this is based on looking at the code and the stack trace.
Attachment #8658521 -
Flags: review?(jyavenard)
Comment 7•11 years ago
|
||
Comment on attachment 8658521 [details] [diff] [review]
Convert assert to warning
Review of attachment 8658521 [details] [diff] [review]:
-----------------------------------------------------------------
yes..
ideally we should be able to handle error in SPS, the entire code assume it's always valid.
Attachment #8658521 -
Flags: review?(jyavenard) → review+
| Assignee | ||
Comment 8•11 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/c75f9ca74a29c05a3457d33531548c63f9b6d784
Bug 1187076 - Warn at end of SPS buffers. r=jya
Comment 9•11 years ago
|
||
Status: NEW → RESOLVED
Closed: 11 years ago
status-firefox43:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla43
You need to log in
before you can comment on or make changes to this bug.
Description
•