Mercurial > libavcodec.hg
comparison bitstream.c @ 4685:2c8f88e7397a libavcodec
fix init_vlc() with nonzero flags
| author | mru |
|---|---|
| date | Sun, 18 Mar 2007 22:32:39 +0000 |
| parents | aab60ff3d468 |
| children | beeb03aad909 |
comparison
equal
deleted
inserted
replaced
| 4684:6ec0afffc572 | 4685:2c8f88e7397a |
|---|---|
| 225 with av_free_static(), 0 if free_vlc() will be used. | 225 with av_free_static(), 0 if free_vlc() will be used. |
| 226 */ | 226 */ |
| 227 int init_vlc(VLC *vlc, int nb_bits, int nb_codes, | 227 int init_vlc(VLC *vlc, int nb_bits, int nb_codes, |
| 228 const void *bits, int bits_wrap, int bits_size, | 228 const void *bits, int bits_wrap, int bits_size, |
| 229 const void *codes, int codes_wrap, int codes_size, | 229 const void *codes, int codes_wrap, int codes_size, |
| 230 int use_static) | 230 int flags) |
| 231 { | 231 { |
| 232 vlc->bits = nb_bits; | 232 vlc->bits = nb_bits; |
| 233 if(!use_static) { | 233 if(!(flags & INIT_VLC_USE_STATIC)) { |
| 234 vlc->table = NULL; | 234 vlc->table = NULL; |
| 235 vlc->table_allocated = 0; | 235 vlc->table_allocated = 0; |
| 236 vlc->table_size = 0; | 236 vlc->table_size = 0; |
| 237 } else { | 237 } else { |
| 238 /* Static tables are initially always NULL, return | 238 /* Static tables are initially always NULL, return |
| 246 #endif | 246 #endif |
| 247 | 247 |
| 248 if (build_table(vlc, nb_bits, nb_codes, | 248 if (build_table(vlc, nb_bits, nb_codes, |
| 249 bits, bits_wrap, bits_size, | 249 bits, bits_wrap, bits_size, |
| 250 codes, codes_wrap, codes_size, | 250 codes, codes_wrap, codes_size, |
| 251 0, 0, use_static) < 0) { | 251 0, 0, flags) < 0) { |
| 252 av_free(vlc->table); | 252 av_free(vlc->table); |
| 253 return -1; | 253 return -1; |
| 254 } | 254 } |
| 255 return 0; | 255 return 0; |
| 256 } | 256 } |
