Mercurial > libavcodec.hg
comparison ivi_common.c @ 11384:ba57caf45845 libavcodec
When tracking non-zero coefficients during Indeo 5 decoding, make sure
it does not ignore coefficient value = 256.
Patch by Maxim ((!min)_pole \at gmx dot/ de)
author | kostya |
---|---|
date | Sun, 07 Mar 2010 06:03:45 +0000 |
parents | d617766bf19b |
children | 43ae6b3f9e15 |
comparison
equal
deleted
inserted
replaced
11383:3d5d0c2d5b6b | 11384:ba57caf45845 |
---|---|
411 | 411 |
412 q = (base_tab[pos] * scale_tab[quant]) >> 8; | 412 q = (base_tab[pos] * scale_tab[quant]) >> 8; |
413 if (q > 1) | 413 if (q > 1) |
414 val = val * q + FFSIGN(val) * ((q >> 1) - (q & 1)); | 414 val = val * q + FFSIGN(val) * ((q >> 1) - (q & 1)); |
415 trvec[pos] = val; | 415 trvec[pos] = val; |
416 col_flags[pos & col_mask] |= val; /* track columns containing non-zero coeffs */ | 416 col_flags[pos & col_mask] |= !!val; /* track columns containing non-zero coeffs */ |
417 }// while | 417 }// while |
418 | 418 |
419 if (scan_pos >= num_coeffs && sym != rvmap->eob_sym) | 419 if (scan_pos >= num_coeffs && sym != rvmap->eob_sym) |
420 return -1; /* corrupt block data */ | 420 return -1; /* corrupt block data */ |
421 | 421 |