提交 552bc42d 编写于 作者: J John Stebbins

h261dec: Fix order of initialization

ff_MPV_common_init requires the frame dimensions which get parsed in
h261_decode_picture_header.
上级 b869eea7
......@@ -581,12 +581,9 @@ static int h261_decode_frame(AVCodecContext *avctx, void *data,
retry:
init_get_bits(&s->gb, buf, buf_size * 8);
if (!s->context_initialized) {
if (!s->context_initialized)
// we need the IDCT permutaton for reading a custom matrix
ff_mpv_idct_init(s);
if (ff_MPV_common_init(s) < 0)
return -1;
}
ret = h261_decode_picture_header(h);
......@@ -602,6 +599,11 @@ retry:
ff_MPV_common_end(s);
s->parse_context = pc;
}
if (!s->context_initialized)
if ((ret = ff_MPV_common_init(s)) < 0)
return ret;
if (!s->context_initialized) {
ret = ff_set_dimensions(avctx, s->width, s->height);
if (ret < 0)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册