Closed Bug 1143561 Opened 9 years ago Closed 9 years ago

crash on VCMFrameBufferEnum VCMJitterBuffer::GetFrame

Categories

(Core :: WebRTC, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1158627

People

(Reporter: ruil2, Unassigned)

Details

User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/600.3.18 (KHTML, like Gecko) Version/8.0.3 Safari/600.3.18

Steps to reproduce:

make a call with FF squared client and squared iOS client


Actual results:

camera video can be showed about 2 or 3s. then crash.
crash info:

Assertion failed: (*frame), function GetFrame, file /Project/firefox/media/webrtc/trunk/webrtc/modules/video_coding/main/source/jitter_buffer.cc, line 663.




Expected results:

camera video can be viewed
Looking at the code here:
https://dxr.mozilla.org/mozilla-central/source/media/webrtc/trunk/webrtc/modules/video_coding/main/source/jitter_buffer.cc#658

It appears  that RecycleFramesUntilKeyFrame did not free up any frames so the debug version will hit the assert and the release version would null deref a few lines later.  Perhaps we should replace the assert with something like 'return kGeneralError' to avoid a crash at least.
(In reply to Ethan Hugg [:ehugg] from comment #1)
> Looking at the code here:
> https://dxr.mozilla.org/mozilla-central/source/media/webrtc/trunk/webrtc/
> modules/video_coding/main/source/jitter_buffer.cc#658
> 
> It appears  that RecycleFramesUntilKeyFrame did not free up any frames so
> the debug version will hit the assert and the release version would null
> deref a few lines later.  Perhaps we should replace the assert with
> something like 'return kGeneralError' to avoid a crash at least.
yes, we can return error in this case, but I am not sure whether there is a potential issue on this case.
Component: Untriaged → WebRTC
Product: Firefox → Core
Status: UNCONFIRMED → RESOLVED
Closed: 9 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.