Commit c742ab4e authored by Ronald S. Bultje's avatar Ronald S. Bultje

vc1parse: call vc1_init_common().

The parser uses VLC tables initialized in vc1_common_init(), therefore
we should call this function on parser init also.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
parent 9d3050d3
...@@ -447,5 +447,6 @@ int ff_vc1_decode_entry_point(AVCodecContext *avctx, VC1Context *v, GetBitContex ...@@ -447,5 +447,6 @@ int ff_vc1_decode_entry_point(AVCodecContext *avctx, VC1Context *v, GetBitContex
int ff_vc1_parse_frame_header (VC1Context *v, GetBitContext *gb); int ff_vc1_parse_frame_header (VC1Context *v, GetBitContext *gb);
int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext *gb); int ff_vc1_parse_frame_header_adv(VC1Context *v, GetBitContext *gb);
int ff_vc1_init_common(VC1Context *v);
#endif /* AVCODEC_VC1_H */ #endif /* AVCODEC_VC1_H */
...@@ -188,7 +188,7 @@ static int vc1_parse_init(AVCodecParserContext *s) ...@@ -188,7 +188,7 @@ static int vc1_parse_init(AVCodecParserContext *s)
{ {
VC1ParseContext *vpc = s->priv_data; VC1ParseContext *vpc = s->priv_data;
vpc->v.s.slice_context_count = 1; vpc->v.s.slice_context_count = 1;
return 0; return ff_vc1_init_common(&vpc->v);
} }
AVCodecParser ff_vc1_parser = { AVCodecParser ff_vc1_parser = {
......
...@@ -67,7 +67,7 @@ static const int offset_table2[9] = { 0, 1, 3, 7, 15, 31, 63, 127, 255 }; ...@@ -67,7 +67,7 @@ static const int offset_table2[9] = { 0, 1, 3, 7, 15, 31, 63, 127, 255 };
* @param v The VC1Context to initialize * @param v The VC1Context to initialize
* @return Status * @return Status
*/ */
static int vc1_init_common(VC1Context *v) int ff_vc1_init_common(VC1Context *v)
{ {
static int done = 0; static int done = 0;
int i = 0; int i = 0;
...@@ -5274,7 +5274,7 @@ static av_cold int vc1_decode_init(AVCodecContext *avctx) ...@@ -5274,7 +5274,7 @@ static av_cold int vc1_decode_init(AVCodecContext *avctx)
avctx->idct_algo = FF_IDCT_WMV2; avctx->idct_algo = FF_IDCT_WMV2;
} }
if (vc1_init_common(v) < 0) if (ff_vc1_init_common(v) < 0)
return -1; return -1;
ff_vc1dsp_init(&v->vc1dsp); ff_vc1dsp_init(&v->vc1dsp);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment