[FFmpeg-cvslog] tools/ismindex: Keep count fields consistent with arrays in case of errors

Michael Niedermayer git at videolan.org
Tue Jan 6 21:35:58 CET 2015


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Tue Jan  6 21:07:50 2015 +0100| [a0a7b154bb49080d187170d0ed06e607fcc0b8d2] | committer: Michael Niedermayer

tools/ismindex: Keep count fields consistent with arrays in case of errors

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 tools/ismindex.c |    4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tools/ismindex.c b/tools/ismindex.c
index 3e53046..d6386ac 100644
--- a/tools/ismindex.c
+++ b/tools/ismindex.c
@@ -340,6 +340,7 @@ static int read_tfra(struct Tracks *tracks, int start_index, AVIOContext *f)
     track->chunks  = avio_rb32(f);
     track->offsets = av_mallocz_array(track->chunks, sizeof(*track->offsets));
     if (!track->offsets) {
+        track->chunks = 0;
         ret = AVERROR(ENOMEM);
         goto fail;
     }
@@ -448,10 +449,11 @@ fail:
 
 static int get_private_data(struct Track *track, AVCodecContext *codec)
 {
-    track->codec_private_size = codec->extradata_size;
+    track->codec_private_size = 0;
     track->codec_private      = av_mallocz(codec->extradata_size);
     if (!track->codec_private)
         return AVERROR(ENOMEM);
+    track->codec_private_size = codec->extradata_size;
     memcpy(track->codec_private, codec->extradata, codec->extradata_size);
     return 0;
 }



More information about the ffmpeg-cvslog mailing list