[FFmpeg-cvslog] truemotion2: check return value of av_malloc(z)
Paul B Mahol
git at videolan.org
Thu Aug 29 12:47:12 CEST 2013
ffmpeg | branch: master | Paul B Mahol <onemda at gmail.com> | Wed Aug 28 16:48:15 2013 +0000| [d49f2603bedb780a6cedff4ac790605679cf4029] | committer: Paul B Mahol
truemotion2: check return value of av_malloc(z)
Signed-off-by: Paul B Mahol <onemda at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d49f2603bedb780a6cedff4ac790605679cf4029
---
libavcodec/truemotion2.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/libavcodec/truemotion2.c b/libavcodec/truemotion2.c
index 6c119ac..e083171 100644
--- a/libavcodec/truemotion2.c
+++ b/libavcodec/truemotion2.c
@@ -173,6 +173,11 @@ static int tm2_build_huff_table(TM2Context *ctx, TM2Codes *code)
huff.bits = av_mallocz(huff.max_num * sizeof(uint32_t));
huff.lens = av_mallocz(huff.max_num * sizeof(int));
+ if (!huff.nums || !huff.bits || !huff.lens) {
+ res = AVERROR(ENOMEM);
+ goto fail;
+ }
+
res = tm2_read_tree(ctx, 0, 0, &huff);
if (huff.num != huff.max_num) {
@@ -194,10 +199,15 @@ static int tm2_build_huff_table(TM2Context *ctx, TM2Codes *code)
code->bits = huff.max_bits;
code->length = huff.max_num;
code->recode = av_malloc(code->length * sizeof(int));
+ if (!code->recode) {
+ res = AVERROR(ENOMEM);
+ goto fail;
+ }
for (i = 0; i < code->length; i++)
code->recode[i] = huff.nums[i];
}
}
+fail:
/* free allocated memory */
av_free(huff.nums);
av_free(huff.bits);
More information about the ffmpeg-cvslog
mailing list