From 5b3438c6301c27c290227b1f8560afe1e495e47d Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 11 Jan 2002 22:07:12 +0000 Subject: [PATCH] different fix, s->mbintra_table used only if h263_pred set. - patch by Michael Niedermayer Originally committed as revision 257 to svn://svn.ffmpeg.org/ffmpeg/trunk --- libavcodec/mpegvideo.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libavcodec/mpegvideo.c b/libavcodec/mpegvideo.c index e55be7b431..5c8ca42429 100644 --- a/libavcodec/mpegvideo.c +++ b/libavcodec/mpegvideo.c @@ -180,13 +180,13 @@ int MPV_common_init(MpegEncContext *s) s->coded_block = av_mallocz(y_size); if (!s->coded_block) goto fail; - } /* which mb is a intra block */ s->mbintra_table = av_mallocz(s->mb_width * s->mb_height); if (!s->mbintra_table) goto fail; memset(s->mbintra_table, 1, s->mb_width * s->mb_height); + } /* default structure is frame */ s->picture_structure = PICT_FRAME; @@ -209,7 +209,7 @@ int MPV_common_init(MpegEncContext *s) if (s->coded_block) free(s->coded_block); if (s->mbintra_table) - { free(s->mbintra_table);s->mbintra_table=NULL; } + free(s->mbintra_table); if (s->mbskip_table) free(s->mbskip_table); for(i=0;i<3;i++) { @@ -234,7 +234,7 @@ void MPV_common_end(MpegEncContext *s) free(s->dc_val[0]); free(s->ac_val[0]); free(s->coded_block); - { free(s->mbintra_table);s->mbintra_table=NULL; } + free(s->mbintra_table); } if (s->mbskip_table) free(s->mbskip_table); @@ -748,7 +748,7 @@ void MPV_decode_mb(MpegEncContext *s, DCTELEM block[6][64]) s->last_dc[2] = 128 << s->intra_dc_precision; } } - else + else if (s->h263_pred) s->mbintra_table[mb_x + mb_y*s->mb_width]=1; /* update motion predictor */