Mercurial > libavcodec.hg
changeset 2073:95d303a305d2 libavcodec
fix initialization bug in which execution overwrites essential data
tables which causes trouble on subsequent runs if decoder is not
disposed first
author | melanson |
---|---|
date | Fri, 11 Jun 2004 02:24:08 +0000 |
parents | c200977cdf78 |
children | 2faafe7a3db6 |
files | truemotion1.c |
diffstat | 1 files changed, 8 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/truemotion1.c Thu Jun 10 22:56:43 2004 +0000 +++ b/truemotion1.c Fri Jun 11 02:24:08 2004 +0000 @@ -62,10 +62,10 @@ int block_width; int block_height; - int16_t *ydt; - int16_t *cdt; - int16_t *fat_ydt; - int16_t *fat_cdt; + int16_t ydt[8]; + int16_t cdt[8]; + int16_t fat_ydt[8]; + int16_t fat_cdt[8]; int last_deltaset, last_vectable; @@ -146,10 +146,10 @@ if (delta_table_index > 3) return; - s->ydt = ydts[delta_table_index]; - s->cdt = cdts[delta_table_index]; - s->fat_ydt = fat_ydts[delta_table_index]; - s->fat_cdt = fat_cdts[delta_table_index]; + memcpy(s->ydt, ydts[delta_table_index], 8 * sizeof(int16_t)); + memcpy(s->cdt, cdts[delta_table_index], 8 * sizeof(int16_t)); + memcpy(s->fat_ydt, fat_ydts[delta_table_index], 8 * sizeof(int16_t)); + memcpy(s->fat_cdt, fat_cdts[delta_table_index], 8 * sizeof(int16_t)); /* Y skinny deltas need to be halved for some reason; maybe the * skinny Y deltas should be modified */