From: Michael Niedermayer Date: Wed, 12 Nov 2014 10:13:10 +0000 (+0100) Subject: roqaudio: Always use the frame buffer on flush X-Git-Tag: v11.4~83 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=12e1a7013a53ad957c4ff11a3aebc0763024d24b;p=platform%2Fupstream%2Flibav.git 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 (cherry picked from commit 55b59fab880a9fcdd30f97c5170af282087ac4f7) Signed-off-by: Luca Barbato --- diff --git a/libavcodec/roqaudioenc.c b/libavcodec/roqaudioenc.c index f97d5d6..402eb78 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;