ffmpeg | branch: master | Marton Balint <c...@passwd.hu> | Sat Feb 20 01:52:25 2016 +0100| [e22bd239c046014652a3487f542f2ab7b34f7a62] | committer: Marton Balint
avformat/mov: do not leak memory on ffio_read_size failure Reviewed-by: Michael Niedermayer <mich...@niedermayer.cc> Signed-off-by: Marton Balint <c...@passwd.hu> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e22bd239c046014652a3487f542f2ab7b34f7a62 --- libavformat/mov.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 248a155..043f4a9 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -3178,6 +3178,7 @@ static int mov_read_custom(MOVContext *c, AVIOContext *pb, MOVAtom atom) int64_t end = avio_tell(pb) + atom.size; uint8_t *key = NULL, *val = NULL, *mean = NULL; int i; + int ret = 0; AVStream *st; MOVStreamContext *sc; @@ -3189,7 +3190,6 @@ static int mov_read_custom(MOVContext *c, AVIOContext *pb, MOVAtom atom) for (i = 0; i < 3; i++) { uint8_t **p; uint32_t len, tag; - int ret; if (end - avio_tell(pb) <= 12) break; @@ -3219,7 +3219,7 @@ static int mov_read_custom(MOVContext *c, AVIOContext *pb, MOVAtom atom) ret = ffio_read_size(pb, *p, len); if (ret < 0) { av_freep(p); - return ret; + break; } (*p)[len] = 0; } @@ -3246,7 +3246,7 @@ static int mov_read_custom(MOVContext *c, AVIOContext *pb, MOVAtom atom) av_freep(&key); av_freep(&val); av_freep(&mean); - return 0; + return ret; } static int mov_read_meta(MOVContext *c, AVIOContext *pb, MOVAtom atom) _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog