summaryrefslogtreecommitdiff
path: root/libavcodec/tak_parser.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2015-02-03 15:27:28 +0000
committerPaul B Mahol <onemda@gmail.com>2015-02-04 09:45:41 +0000
commit49f825713536f89823f417b21a2a6fcec99704a6 (patch)
treea4a361ea0601f146191211b33faa625ce306a361 /libavcodec/tak_parser.c
parentc93a7b264f76a0c92e25a561848448333731fbce (diff)
downloadffmpeg-49f825713536f89823f417b21a2a6fcec99704a6.tar.gz
avcodec/tak_parser: use init_get_bits8()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavcodec/tak_parser.c')
-rw-r--r--libavcodec/tak_parser.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libavcodec/tak_parser.c b/libavcodec/tak_parser.c
index 5d8460c90a..4f2149ae11 100644
--- a/libavcodec/tak_parser.c
+++ b/libavcodec/tak_parser.c
@@ -43,10 +43,12 @@ static int tak_parse(AVCodecParserContext *s, AVCodecContext *avctx,
GetBitContext gb;
int consumed = 0;
int needed = buf_size ? TAK_MAX_FRAME_HEADER_BYTES : 8;
+ int ret;
if (s->flags & PARSER_FLAG_COMPLETE_FRAMES) {
TAKStreamInfo ti;
- init_get_bits(&gb, buf, buf_size);
+ if ((ret = init_get_bits8(&gb, buf, buf_size)) < 0)
+ return ret;
if (!ff_tak_decode_frame_header(avctx, &gb, &ti, 127))
s->duration = t->ti.last_frame_samples ? t->ti.last_frame_samples
: t->ti.frame_samples;
@@ -73,8 +75,9 @@ static int tak_parse(AVCodecParserContext *s, AVCodecContext *avctx,
pc->buffer[ t->index + 1 ] == 0xA0) {
TAKStreamInfo ti;
- init_get_bits(&gb, pc->buffer + t->index,
- 8 * (pc->index - t->index));
+ if ((ret = init_get_bits8(&gb, pc->buffer + t->index,
+ pc->index - t->index)) < 0)
+ return ret;
if (!ff_tak_decode_frame_header(avctx, &gb,
pc->frame_start_found ? &ti : &t->ti, 127) &&
!ff_tak_check_crc(pc->buffer + t->index,