Showing the changes to codec/decoder/core/src/mv_pred.cpp (1 of 2 files). Show all
Unified · Split
| @@ -1104,6 +1104,10 @@ void FillTemporalDirect8x8Mv (PDqLayer pCurLayer, const int16_t& iIdx8, const in · 1103 unmodified lines | |||
| 1104 | } | 1104 | } |
| 1105 | int8_t MapColToList0 (PWelsDecoderContext& pCtx, const int8_t& colocRefIndexL0, | 1105 | int8_t MapColToList0 (PWelsDecoderContext& pCtx, const int8_t& colocRefIndexL0, |
| 1106 | const int32_t& ref0Count) { //ISO/IEC 14496-10:2009(E) (8-193) | 1106 | const int32_t& ref0Count) { //ISO/IEC 14496-10:2009(E) (8-193) |
| 1107 | //When reference is lost, this function must be skipped. | ||
| 1108 | if ((pCtx->iErrorCode & dsRefLost) == dsRefLost) { | ||
| 1109 | return 0; | ||
| 1110 | } | ||
| 1107 | PPicture pic1 = pCtx->sRefPic.pRefList[LIST_1][0]; | 1111 | PPicture pic1 = pCtx->sRefPic.pRefList[LIST_1][0]; |
| 1108 | if (pic1 && pic1->pRefPic[LIST_0][colocRefIndexL0]) { | 1112 | if (pic1 && pic1->pRefPic[LIST_0][colocRefIndexL0]) { |
| 1109 | const int32_t iFramePoc = pic1->pRefPic[LIST_0][colocRefIndexL0]->iFramePoc; | 1113 | const int32_t iFramePoc = pic1->pRefPic[LIST_0][colocRefIndexL0]->iFramePoc; |