mirror of https://git.ffmpeg.org/ffmpeg.git
VP3: Do not ignore error from read_huffman_tree().
Originally committed as revision 17090 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
16a59a7bb6
commit
00bbe27631
|
@ -2014,9 +2014,11 @@ static int read_huffman_tree(AVCodecContext *avctx, GetBitContext *gb)
|
||||||
}
|
}
|
||||||
s->huff_code_size++;
|
s->huff_code_size++;
|
||||||
s->hbits <<= 1;
|
s->hbits <<= 1;
|
||||||
read_huffman_tree(avctx, gb);
|
if (read_huffman_tree(avctx, gb))
|
||||||
|
return -1;
|
||||||
s->hbits |= 1;
|
s->hbits |= 1;
|
||||||
read_huffman_tree(avctx, gb);
|
if (read_huffman_tree(avctx, gb))
|
||||||
|
return -1;
|
||||||
s->hbits >>= 1;
|
s->hbits >>= 1;
|
||||||
s->huff_code_size--;
|
s->huff_code_size--;
|
||||||
}
|
}
|
||||||
|
@ -2192,9 +2194,11 @@ static int theora_decode_tables(AVCodecContext *avctx, GetBitContext *gb)
|
||||||
s->huff_code_size = 1;
|
s->huff_code_size = 1;
|
||||||
if (!get_bits1(gb)) {
|
if (!get_bits1(gb)) {
|
||||||
s->hbits = 0;
|
s->hbits = 0;
|
||||||
read_huffman_tree(avctx, gb);
|
if(read_huffman_tree(avctx, gb))
|
||||||
|
return -1;
|
||||||
s->hbits = 1;
|
s->hbits = 1;
|
||||||
read_huffman_tree(avctx, gb);
|
if(read_huffman_tree(avctx, gb))
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2250,7 +2254,8 @@ static int theora_decode_init(AVCodecContext *avctx)
|
||||||
// theora_decode_comments(avctx, gb);
|
// theora_decode_comments(avctx, gb);
|
||||||
break;
|
break;
|
||||||
case 0x82:
|
case 0x82:
|
||||||
theora_decode_tables(avctx, &gb);
|
if (theora_decode_tables(avctx, &gb))
|
||||||
|
return -1;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
av_log(avctx, AV_LOG_ERROR, "Unknown Theora config packet: %d\n", ptype&~0x80);
|
av_log(avctx, AV_LOG_ERROR, "Unknown Theora config packet: %d\n", ptype&~0x80);
|
||||||
|
|
Loading…
Reference in New Issue