[FFmpeg-cvslog] avcodec/ratecontrol: Check for av_malloc*() failures
Michael Niedermayer
git at videolan.org
Sat Jan 10 19:39:16 CET 2015
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sat Jan 10 19:29:39 2015 +0100| [0898a6d4e4b669704fce663f610aa43dd7483fe9] | committer: Michael Niedermayer
avcodec/ratecontrol: Check for av_malloc*() failures
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0898a6d4e4b669704fce663f610aa43dd7483fe9
---
libavcodec/ratecontrol.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/libavcodec/ratecontrol.c b/libavcodec/ratecontrol.c
index d05e2ee..b83af59 100644
--- a/libavcodec/ratecontrol.c
+++ b/libavcodec/ratecontrol.c
@@ -175,6 +175,8 @@ av_cold int ff_rate_control_init(MpegEncContext *s)
if (i <= 0 || i >= INT_MAX / sizeof(RateControlEntry))
return -1;
rcc->entry = av_mallocz(i * sizeof(RateControlEntry));
+ if (!rcc->entry)
+ return AVERROR(ENOMEM);
rcc->num_entries = i;
/* init all to skipped p frames
@@ -953,6 +955,11 @@ static int init_pass2(MpegEncContext *s)
qscale = av_malloc_array(rcc->num_entries, sizeof(double));
blurred_qscale = av_malloc_array(rcc->num_entries, sizeof(double));
+ if (!qscale || !blurred_qscale) {
+ av_free(qscale);
+ av_free(blurred_qscale);
+ return AVERROR(ENOMEM);
+ }
toobig = 0;
for (step = 256 * 256; step > 0.0000001; step *= 0.5) {
More information about the ffmpeg-cvslog
mailing list