]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/cinedec.c
api-h264-test: use non-obsolete decoding API
[ffmpeg] / libavformat / cinedec.c
index de34fb963820188a8c9965263978cb4a408d33d9..c6c0d927ee955122f3735a151cda8850f38dd26c 100644 (file)
@@ -56,7 +56,7 @@ enum {
 #define CFA_BLGRAY  0x20000000U
 #define CFA_BRGRAY  0x10000000U
 
-static int cine_read_probe(AVProbeData *p)
+static int cine_read_probe(const AVProbeData *p)
 {
     int HeaderSize;
     if (p->buf[0] == 'C' && p->buf[1] == 'I' &&  // Type
@@ -168,6 +168,10 @@ static int cine_read_header(AVFormatContext *avctx)
     avio_skip(pb, 616); // Binning .. bFlipH
     if (!avio_rl32(pb) ^ vflip) {
         st->codecpar->extradata  = av_strdup("BottomUp");
+        if (!st->codecpar->extradata) {
+            st->codecpar->extradata_size = 0;
+            return AVERROR(ENOMEM);
+        }
         st->codecpar->extradata_size  = 9;
     }
 
@@ -287,7 +291,7 @@ static int cine_read_packet(AVFormatContext *avctx, AVPacket *pkt)
     if (cine->pts >= st->duration)
         return AVERROR_EOF;
 
-    avio_seek(pb, st->index_entries[cine->pts].pos, SEEK_SET);
+    avio_seek(pb, st->internal->index_entries[cine->pts].pos, SEEK_SET);
     n = avio_rl32(pb);
     if (n < 8)
         return AVERROR_INVALIDDATA;