[FFmpeg-cvslog] lavc/rv30: fix mem leak in case of init failure

Lukasz Marek git at videolan.org
Sun Nov 23 20:54:02 CET 2014


ffmpeg | branch: master | Lukasz Marek <lukasz.m.luki2 at gmail.com> | Sat Nov 22 23:11:50 2014 +0100| [4e9745fbff5174c0679452b613b0b73f08ca0280] | committer: Lukasz Marek

lavc/rv30: fix mem leak in case of init failure

Also replaced return -1 with return AVERROR(EINVAL)

Signed-off-by: Lukasz Marek <lukasz.m.luki2 at gmail.com>

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

 libavcodec/rv30.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/libavcodec/rv30.c b/libavcodec/rv30.c
index fd8fd4f..1483107 100644
--- a/libavcodec/rv30.c
+++ b/libavcodec/rv30.c
@@ -259,13 +259,13 @@ static av_cold int rv30_decode_init(AVCodecContext *avctx)
     RV34DecContext *r = avctx->priv_data;
     int ret;
 
+    if (avctx->extradata_size < 2) {
+        av_log(avctx, AV_LOG_ERROR, "Extradata is too small.\n");
+        return AVERROR(EINVAL);
+    }
     r->rv30 = 1;
     if ((ret = ff_rv34_decode_init(avctx)) < 0)
         return ret;
-    if(avctx->extradata_size < 2){
-        av_log(avctx, AV_LOG_ERROR, "Extradata is too small.\n");
-        return -1;
-    }
 
     r->max_rpr = avctx->extradata[1] & 7;
     if(avctx->extradata_size < 2*r->max_rpr + 8){



More information about the ffmpeg-cvslog mailing list