History

fix ossz-buzz 13692. validate source yuv pointers before recontructing MBs

xiaotiansf committed 7 years ago

Commit fa4bb221 parent 80a06fc3 files · +15 −12Browse files

Showing the changes to codec/decoder/core/src/decode_slice.cpp (1 of 3 files). Show all

Unified · Split

codec/decoder/core/src/decode_slice.cpp+3−3
@@ -222,7 +222,7 @@ int32_t WelsMbInterConstruction (PWelsDecoderContext pCtx, PDqLayer pCurLayer) { · 221 unmodified lines
222 pDstCr = pCurLayer->pDec->pData[2] + ((iMbY * iChromaStride + iMbX) << 3);222 pDstCr = pCurLayer->pDec->pData[2] + ((iMbY * iChromaStride + iMbX) << 3);
223 223
224 if (pCtx->eSliceType == P_SLICE) {224 if (pCtx->eSliceType == P_SLICE) {
225 GetInterPred (pDstY, pDstCb, pDstCr, pCtx);225 WELS_B_MB_REC_VERIFY (GetInterPred (pDstY, pDstCb, pDstCr, pCtx));
226 } else {226 } else {
227 if (pCtx->pTempDec == NULL)227 if (pCtx->pTempDec == NULL)
228 pCtx->pTempDec = AllocPicture (pCtx, pCtx->pSps->iMbWidth << 4, pCtx->pSps->iMbHeight << 4);228 pCtx->pTempDec = AllocPicture (pCtx, pCtx->pSps->iMbWidth << 4, pCtx->pSps->iMbHeight << 4);
@@ -314,7 +314,7 @@ int32_t WelsMbInterPrediction (PWelsDecoderContext pCtx, PDqLayer pCurLayer) { · 85 unmodified lines
314 pDstCr = pCurLayer->pDec->pData[2] + ((iMbY * iChromaStride + iMbX) << 3);314 pDstCr = pCurLayer->pDec->pData[2] + ((iMbY * iChromaStride + iMbX) << 3);
315 315
316 if (pCtx->eSliceType == P_SLICE) {316 if (pCtx->eSliceType == P_SLICE) {
317 GetInterPred (pDstY, pDstCb, pDstCr, pCtx);317 WELS_B_MB_REC_VERIFY (GetInterPred (pDstY, pDstCb, pDstCr, pCtx));
318 } else {318 } else {
319 if (pCtx->pTempDec == NULL)319 if (pCtx->pTempDec == NULL)
320 pCtx->pTempDec = AllocPicture (pCtx, pCtx->pSps->iMbWidth << 4, pCtx->pSps->iMbHeight << 4);320 pCtx->pTempDec = AllocPicture (pCtx, pCtx->pSps->iMbWidth << 4, pCtx->pSps->iMbHeight << 4);
@@ -326,7 +326,7 @@ int32_t WelsMbInterPrediction (PWelsDecoderContext pCtx, PDqLayer pCurLayer) { · 5 unmodified lines
326 pDstYCbCr[0] = pDstY;326 pDstYCbCr[0] = pDstY;
327 pDstYCbCr[1] = pDstCb;327 pDstYCbCr[1] = pDstCb;
328 pDstYCbCr[2] = pDstCr;328 pDstYCbCr[2] = pDstCr;
329 GetInterBPred (pDstYCbCr, pTempDstYCbCr, pCtx);329 WELS_B_MB_REC_VERIFY (GetInterBPred (pDstYCbCr, pTempDstYCbCr, pCtx));
330 }330 }
331 return ERR_NONE;331 return ERR_NONE;
332}332}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t