Mercurial > libavcodec.hg
changeset 196:9ffa69cd4ed6 libavcodec
This fixes segfaults because of uninitialized s->mbintra_table variable - patch by Vladimir Dergachev <volodya@mindspring.com>
author | arpi_esp |
---|---|
date | Fri, 11 Jan 2002 21:32:34 +0000 |
parents | 92f726205082 |
children | 21abf1b20016 |
files | mpegvideo.c |
diffstat | 1 files changed, 5 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mpegvideo.c Fri Jan 11 21:27:04 2002 +0000 +++ b/mpegvideo.c Fri Jan 11 21:32:34 2002 +0000 @@ -180,13 +180,13 @@ s->coded_block = av_mallocz(y_size); if (!s->coded_block) goto fail; + } /* which mb is a intra block */ - s->mbintra_table = av_mallocz(y_size/4); + s->mbintra_table = av_mallocz(s->mb_width * s->mb_height); if (!s->mbintra_table) goto fail; - memset(s->mbintra_table, 1, y_size/4); - } + memset(s->mbintra_table, 1, s->mb_width * s->mb_height); /* default structure is frame */ s->picture_structure = PICT_FRAME; @@ -209,7 +209,7 @@ if (s->coded_block) free(s->coded_block); if (s->mbintra_table) - free(s->mbintra_table); + { free(s->mbintra_table);s->mbintra_table=NULL; } if (s->mbskip_table) free(s->mbskip_table); for(i=0;i<3;i++) { @@ -234,7 +234,7 @@ free(s->dc_val[0]); free(s->ac_val[0]); free(s->coded_block); - free(s->mbintra_table); + { free(s->mbintra_table);s->mbintra_table=NULL; } } if (s->mbskip_table) free(s->mbskip_table);