[datatype-dev] CR: A combined patch for fixing ANR issues
Qing Li qingli at realnetworks.comModified by: qingli at real.com<mailto:qingli at real.com> Date: 12/30/2011 Project: RealPlayer for Android Smartphones Bug ID: 14192 Bug URL: https://bugs.helixcommunity.org/show_bug.cgi?id=14192 Suggested Reviewer: Joe Li Synopsis: A combined patch for fixing ANR issues Overview: The patch is combined from Jesse, Gurpreet and Collins's patch which are separated on several branches, those patches fixed two ANR issues: 1) when invoke CBaseOMXDec::GetDecodedBuffer function, if all decoded buffers are zero length, and the omx decoder's state is OMX_StateIdle or OMX_StateInvalid or m_bPendingPortReconfig is true, then the function will dead-loop 2) when CBaseOMXDec::AllocateBuff failed, the m_outputBufferList.count() could be different with m_uOutBuffNum, and helix could be blocked at the following logic: while (m_outputBufferList.GetCount() < m_uOutBuffNum) { m_pBufferDoneEvent->Wait(ALLFS); } which is invoked in CBaseOMXDec::PortReconfig and CBaseOMXDec::Close(). I will merge their fixes to all related source files. Files Added: None Files Modified: datatype/omx/common/CBaseOmxDec.cpp datatype/omx/common/android/2.3/CBaseOmxDec_8x55.cpp datatype/omx/common/android/2.3/CBaseOmxDec_smdkc110.cpp datatype/omx/common/android/3.0/CBaseOmxDec_8x60.cpp datatype/omx/video/decoder/CH263OmxDec.cpp datatype/omx/video/decoder/COmxVideoDec.cpp datatype/omx/video/decoder/rv20strm.cpp datatype/omx/video/decoder/android/2.3/CH263OmxDec_8x55.cpp datatype/omx/video/decoder/android/2.3/CH263OmxDec_smdkc110.cpp datatype/omx/video/decoder/android/2.3/COmxVideoDec_smdkc110.cpp datatype/omx/video/decoder/android/2.3/rv20strm_8x55.cpp datatype/omx/video/decoder/android/2.3/rv20strm_smdkc110.cpp Image Size and Heap Use impact (Client -Only): None Platforms and Profiles Affected: Platform: android-3.1-arm-qsd_8x60 Profile: helix-client-android-full Distribution Libraries Affected:None Distribution library impact and planned action:None Platforms and Profiles Build Verified: Platform: android-3.1-arm-qsd_8x60 Profile: helix-client-android-full Platforms and Profiles Functionality verified: Platform: android-3.1-arm-qsd_8x60 Profile: helix-client-android-full Branch: 361atlas, 361tiger, 361leopard, 361wolf, 361lion, 361kitty, 361koala Copyright assignment: I am a RealNetworks employee or contractor Best Regards! Li Qing -- RealNetworks China, Beijing Office Tel: 008601059542848 Fax: 008601085656477 Address: 18th Floor,Tower B,Pacific Century Place,2A GongTiBeiLu,Chaoyang District,Beijing, China Post Code: 100027 -------------- next part -------------- A non-text attachment was scrubbed... Name: for_omx_anr.diff Type: text/x-patch Size: 14301 bytes Desc: for_omx_anr.diff Url : http://lists.helixcommunity.org/pipermail/datatype-dev/attachments/20111229/f27d641d/for_omx_anr-0001.bin