Commit a02f8ef1 authored by Michael Niedermayer's avatar Michael Niedermayer

h263dec: Prevent dimension changes from leaking on errors in header parsing.

This fixes crashes with frame threads caused by inconsistent context parameters.

Fixes Ticket1207

Found-by: John Villamil
Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent 601d072e
......@@ -438,6 +438,14 @@ retry:
ret = ff_h263_decode_picture_header(s);
}
if (HAVE_THREADS && (s->avctx->active_thread_type&FF_THREAD_FRAME) && ret < 0) {
if ( s->width != avctx->coded_width
|| s->height != avctx->coded_height) {
av_log(s->avctx, AV_LOG_WARNING, "Reverting picture dimensions change due to header decoding failure\n");
s->width = avctx->coded_width;
s->height= avctx->coded_height;
}
}
if(ret==FRAME_SKIPPED) return get_consumed_bytes(s, buf_size);
/* skip if the header was thrashed */
......
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