From 64b9d48f765ff6bf6c6e41edf690c56a4e0cdb8b Mon Sep 17 00:00:00 2001 From: Alexander Strange Date: Tue, 15 Jul 2008 21:30:04 +0000 Subject: [PATCH] Move the size of the H264Context delayed_pic array into a #define. This improves readability by getting rid of some magic numbers. Originally committed as revision 14248 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/h264.c | 4 ++-- libavcodec/h264.h | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 4b69ca5..a030959 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -3302,7 +3302,7 @@ static void idr(H264Context *h){ static void flush_dpb(AVCodecContext *avctx){ H264Context *h= avctx->priv_data; int i; - for(i=0; i<16; i++) { + for(i=0; idelayed_pic[i]) h->delayed_pic[i]->reference= 0; h->delayed_pic[i]= NULL; @@ -7836,7 +7836,7 @@ static int decode_frame(AVCodecContext *avctx, pics = 0; while(h->delayed_pic[pics]) pics++; - assert(pics+1 < sizeof(h->delayed_pic) / sizeof(h->delayed_pic[0])); + assert(pics <= MAX_DELAYED_PIC_COUNT); h->delayed_pic[pics++] = cur; if(cur->reference == 0) diff --git a/libavcodec/h264.h b/libavcodec/h264.h index 2531e3a..fa2fcf1 100644 --- a/libavcodec/h264.h +++ b/libavcodec/h264.h @@ -51,6 +51,8 @@ #define MAX_MMCO_COUNT 66 +#define MAX_DELAYED_PIC_COUNT 16 + /* Compiling in interlaced support reduces the speed * of progressive decoding by about 2%. */ #define ALLOW_INTERLACE @@ -334,7 +336,7 @@ typedef struct H264Context{ Picture ref_list[2][48]; /**< 0..15: frame refs, 16..47: mbaff field refs. Reordered version of default_ref_list according to picture reordering in slice header */ - Picture *delayed_pic[18]; //FIXME size? + Picture *delayed_pic[MAX_DELAYED_PIC_COUNT+2]; //FIXME size? Picture *delayed_output_pic; /** -- 2.7.4