[FFmpeg-cvslog] lavf/matroskadec: Ensure cues_end is initialized

Vignesh Venkatasubramanian git at videolan.org
Mon Aug 25 19:09:56 CEST 2014


ffmpeg | branch: master | Vignesh Venkatasubramanian <vigneshv at google.com> | Mon Aug 25 09:15:13 2014 -0700| [080acf7771e1ca7ab1b20a3c8f20f0ef1150e285] | committer: Michael Niedermayer

lavf/matroskadec: Ensure cues_end is initialized

Ensure that cues_start and cues_end are always initialized and
the webm_dash_manifest_cues function returns appropriate error if
they are not computed correctly.

This fixes coverity defect CID1231991.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv at google.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavformat/matroskadec.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index c19e8e9..83c1b3d 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -3321,7 +3321,7 @@ static int webm_dash_manifest_cues(AVFormatContext *s)
     EbmlList *seekhead_list = &matroska->seekhead;
     MatroskaSeekhead *seekhead = seekhead_list->elem;
     char *buf;
-    int64_t cues_start, cues_end, before_pos, bandwidth;
+    int64_t cues_start = -1, cues_end = -1, before_pos, bandwidth;
     int i;
 
     // determine cues start and end positions
@@ -3340,6 +3340,7 @@ static int webm_dash_manifest_cues(AVFormatContext *s)
         cues_end = cues_start + cues_length + 11; // 11 is the offset of Cues ID.
     }
     avio_seek(matroska->ctx->pb, before_pos, SEEK_SET);
+    if (cues_start == -1 || cues_end == -1) return -1;
 
     // parse the cues
     matroska_parse_cues(matroska);



More information about the ffmpeg-cvslog mailing list