Browse Source

dpx: include offset in the total_size calculation

Fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n1.2
Michael Niedermayer 13 years ago
parent
commit
cb85779d45
1 changed files with 1 additions and 1 deletions
  1. +1
    -1
      libavcodec/dpx.c

+ 1
- 1
libavcodec/dpx.c View File

@@ -199,7 +199,7 @@ static int decode_frame(AVCodecContext *avctx,
for (i=0; i<AV_NUM_DATA_POINTERS; i++)
ptr[i] = p->data[i];

if (total_size > avpkt->size) {
if (total_size + (int64_t)offset > avpkt->size) {
av_log(avctx, AV_LOG_ERROR, "Overread buffer. Invalid header?\n");
return AVERROR_INVALIDDATA;
}


Loading…
Cancel
Save