]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/subviewer1dec.c
avformat/avio: Add Metacube support
[ffmpeg] / libavformat / subviewer1dec.c
index e579d1ca9aee88495df205fabc4cd969a676b07a..d1ba99f9843c3e97afb45fa59226800731ddf896 100644 (file)
@@ -31,7 +31,7 @@ typedef struct {
     FFDemuxSubtitlesQueue q;
 } SubViewer1Context;
 
-static int subviewer1_probe(AVProbeData *p)
+static int subviewer1_probe(const AVProbeData *p)
 {
     const unsigned char *ptr = p->buf;
 
@@ -77,8 +77,10 @@ static int subviewer1_read_header(AVFormatContext *s)
                     sub->duration = pts_start - sub->pts;
             } else {
                 sub = ff_subtitles_queue_insert(&subviewer1->q, line, len, 0);
-                if (!sub)
+                if (!sub) {
+                    ff_subtitles_queue_clean(&subviewer1->q);
                     return AVERROR(ENOMEM);
+                }
                 sub->pos = pos;
                 sub->pts = pts_start;
                 sub->duration = -1;
@@ -111,7 +113,7 @@ static int subviewer1_read_close(AVFormatContext *s)
     return 0;
 }
 
-AVInputFormat ff_subviewer1_demuxer = {
+const AVInputFormat ff_subviewer1_demuxer = {
     .name           = "subviewer1",
     .long_name      = NULL_IF_CONFIG_SMALL("SubViewer v1 subtitle format"),
     .priv_data_size = sizeof(SubViewer1Context),