[FFmpeg-cvslog] r12634 - trunk/libavformat/mov.c

bcoudurier subversion
Sun Mar 30 22:49:29 CEST 2008


Author: bcoudurier
Date: Sun Mar 30 22:49:29 2008
New Revision: 12634

Log:
check frag track id before setting st

Modified:
   trunk/libavformat/mov.c

Modified: trunk/libavformat/mov.c
==============================================================================
--- trunk/libavformat/mov.c	(original)
+++ trunk/libavformat/mov.c	Sun Mar 30 22:49:29 2008
@@ -1442,14 +1442,18 @@ static int mov_read_trex(MOVContext *c, 
 static int mov_read_trun(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom)
 {
     MOVFragment *frag = &c->fragment;
-    AVStream *st = c->fc->streams[frag->track_id-1];
-    MOVStreamContext *sc = st->priv_data;
+    AVStream *st;
+    MOVStreamContext *sc;
     uint64_t offset;
     int64_t dts;
     int data_offset = 0;
     unsigned entries, first_sample_flags = frag->flags;
     int flags, distance, i;
 
+    if (!frag->track_id || frag->track_id > c->fc->nb_streams)
+        return -1;
+    st = c->fc->streams[frag->track_id-1];
+    sc = st->priv_data;
     if (sc->pseudo_stream_id+1 != frag->stsd_id)
         return 0;
     if (!st->nb_index_entries)




More information about the ffmpeg-cvslog mailing list