Showing the changes to codec/decoder/core/src/parse_mb_syn_cavlc.cpp (1 of 14 files). Show all
Unified · Split
| @@ -1389,6 +1389,7 @@ int32_t ParseInterBInfo (PWelsDecoderContext pCtx, int16_t iMvArray[LIST_A][30][ · 1388 unmodified lines | |||
| 1389 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { | 1389 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { |
| 1390 | ref_idx_list[listIdx][0] = 0; | 1390 | ref_idx_list[listIdx][0] = 0; |
| 1391 | pCtx->iErrorCode |= dsBitstreamError; | 1391 | pCtx->iErrorCode |= dsBitstreamError; |
| 1392 | RETURN_ERR_IF_NULL(ppRefPic[listIdx][ref_idx_list[listIdx][0]]); | ||
| 1392 | } else { | 1393 | } else { |
| 1393 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); | 1394 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); |
| 1394 | } | 1395 | } |
| @@ -1438,6 +1439,7 @@ int32_t ParseInterBInfo (PWelsDecoderContext pCtx, int16_t iMvArray[LIST_A][30][ · 43 unmodified lines | |||
| 1438 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { | 1439 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { |
| 1439 | iRefIdx = 0; | 1440 | iRefIdx = 0; |
| 1440 | pCtx->iErrorCode |= dsBitstreamError; | 1441 | pCtx->iErrorCode |= dsBitstreamError; |
| 1442 | RETURN_ERR_IF_NULL(ppRefPic[listIdx][iRefIdx]); | ||
| 1441 | } else { | 1443 | } else { |
| 1442 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); | 1444 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); |
| 1443 | } | 1445 | } |
| @@ -1497,6 +1499,7 @@ int32_t ParseInterBInfo (PWelsDecoderContext pCtx, int16_t iMvArray[LIST_A][30][ · 53 unmodified lines | |||
| 1497 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { | 1499 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { |
| 1498 | iRefIdx = 0; | 1500 | iRefIdx = 0; |
| 1499 | pCtx->iErrorCode |= dsBitstreamError; | 1501 | pCtx->iErrorCode |= dsBitstreamError; |
| 1502 | RETURN_ERR_IF_NULL(ppRefPic[listIdx][iRefIdx]); | ||
| 1500 | } else { | 1503 | } else { |
| 1501 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); | 1504 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); |
| 1502 | } | 1505 | } |
| @@ -1643,6 +1646,7 @@ int32_t ParseInterBInfo (PWelsDecoderContext pCtx, int16_t iMvArray[LIST_A][30][ · 140 unmodified lines | |||
| 1643 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { | 1646 | if (pCtx->pParam->eEcActiveIdc != ERROR_CON_DISABLE) { |
| 1644 | iref = 0; | 1647 | iref = 0; |
| 1645 | pCtx->iErrorCode |= dsBitstreamError; | 1648 | pCtx->iErrorCode |= dsBitstreamError; |
| 1649 | RETURN_ERR_IF_NULL(ppRefPic[listIdx][iref]); | ||
| 1646 | } else { | 1650 | } else { |
| 1647 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); | 1651 | return GENERATE_ERROR_NO (ERR_LEVEL_MB_DATA, ERR_INFO_INVALID_REF_INDEX); |
| 1648 | } | 1652 | } |