[FFmpeg-cvslog] lavc: Check CODEC_CAP_VARIABLE_FRAME_SIZE && !frame

Michael Niedermayer git at videolan.org
Tue Jan 17 20:10:50 CET 2012


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Jan 17 03:17:56 2012 +0100| [a129622390fca8a298c3b121f42b2d15910b9b22] | committer: Michael Niedermayer

lavc: Check CODEC_CAP_VARIABLE_FRAME_SIZE && !frame

This combination is quite odd and almost certainly a bug if
it happens.

Reviewed-by: Justin Ruggles <justin.ruggles at gmail.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=a129622390fca8a298c3b121f42b2d15910b9b22
---

 libavcodec/utils.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 22a7ee3..657eb5b 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -968,6 +968,8 @@ int attribute_align_arg avcodec_encode_audio2(AVCodecContext *avctx,
         if (!user_packet) {
             if (avctx->codec->capabilities & CODEC_CAP_VARIABLE_FRAME_SIZE) {
                 av_assert0(av_get_bits_per_sample(avctx->codec_id) != 0);
+                if (!frame)
+                    return AVERROR(EINVAL);
                 buf_size = nb_samples * avctx->channels *
                            av_get_bits_per_sample(avctx->codec_id) / 8;
             } else {



More information about the ffmpeg-cvslog mailing list