diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2014-11-12 11:13:10 +0100 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2015-01-13 00:16:40 +0100 |
commit | 12e1a7013a53ad957c4ff11a3aebc0763024d24b (patch) | |
tree | 955469661d5ff5cb7a0cd516b51be1675bc64bf3 | |
parent | e7ee74485b436c34591177c18c8643764a55d516 (diff) | |
download | ffmpeg-12e1a7013a53ad957c4ff11a3aebc0763024d24b.tar.gz |
roqaudio: Always use the frame buffer on flush
Prevent NULL dereference.
CC: libav-stable@libav.org
Bug-Id: CID 703669
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
(cherry picked from commit 55b59fab880a9fcdd30f97c5170af282087ac4f7)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
-rw-r--r-- | libavcodec/roqaudioenc.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libavcodec/roqaudioenc.c b/libavcodec/roqaudioenc.c index f97d5d6e0c..402eb78be5 100644 --- a/libavcodec/roqaudioenc.c +++ b/libavcodec/roqaudioenc.c @@ -147,15 +147,16 @@ static int roq_dpcm_encode_frame(AVCodecContext *avctx, AVPacket *avpkt, context->input_frames++; return 0; } - in = context->frame_buffer; } + if (context->input_frames < 8) + in = context->frame_buffer; if (stereo) { context->lastSample[0] &= 0xFF00; context->lastSample[1] &= 0xFF00; } - if (context->input_frames == 7 || !in) + if (context->input_frames == 7) data_size = avctx->channels * context->buffered_samples; else data_size = avctx->channels * avctx->frame_size; |