From fd66e67ac6136aff80b1567488568ba1ed7e8fb8 Mon Sep 17 00:00:00 2001 From: Kalev Lember Date: Mon, 4 Dec 2023 07:54:04 +0100 Subject: [PATCH] Fix off by one regression in decoder (#3704) Fix iPicBuffIdx bounds check introduced in commit 986bd65b711191d4883c54ace32a9879e17729c2 and allow 0 as an index value. This fixes Big_Buck_Bunny_720_10s_30MB.mp4 playback with gst-play-1.0. --- codec/decoder/plus/src/welsDecoderExt.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/codec/decoder/plus/src/welsDecoderExt.cpp b/codec/decoder/plus/src/welsDecoderExt.cpp index 170d17de..457effb6 100644 --- a/codec/decoder/plus/src/welsDecoderExt.cpp +++ b/codec/decoder/plus/src/welsDecoderExt.cpp @@ -1136,7 +1136,7 @@ void CWelsDecoder::ReleaseBufferedReadyPictureReorder (PWelsDecoderContext pCtx, m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPOC = IMinInt32; int32_t iPicBuffIdx = m_sPictInfoList[m_sReoderingStatus.iPictInfoIndex].iPicBuffIdx; if (pPicBuff != NULL) { - if (iPicBuffIdx > 0 && iPicBuffIdx < pPicBuff->iCapacity) + if (iPicBuffIdx >= 0 && iPicBuffIdx < pPicBuff->iCapacity) { PPicture pPic = pPicBuff->ppPic[iPicBuffIdx]; --pPic->iRefCount; -- 2.41.0