diff options
author | Carl Eugen Hoyos <ceffmpeg@gmail.com> | 2019-01-24 00:22:47 +0100 |
---|---|---|
committer | Carl Eugen Hoyos <ceffmpeg@gmail.com> | 2019-01-27 14:25:53 +0100 |
commit | d3a69438049b481dd9db1af82fd22494d7560ee4 (patch) | |
tree | d5ced00adf5c5c444798409e910aeb410b310429 | |
parent | b5b6f6ad59ef9bd7af7c5ff3cf94ca3d6abd29ae (diff) | |
download | ffmpeg-d3a69438049b481dd9db1af82fd22494d7560ee4.tar.gz |
lavf/subviewerdec: Skip leading BOM.
Fixes ticket #7661.
-rw-r--r-- | libavformat/subviewerdec.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/libavformat/subviewerdec.c b/libavformat/subviewerdec.c index af084f4856..61eb80af87 100644 --- a/libavformat/subviewerdec.c +++ b/libavformat/subviewerdec.c @@ -27,6 +27,7 @@ #include "avformat.h" #include "internal.h" #include "subtitles.h" +#include "avio_internal.h" #include "libavcodec/internal.h" #include "libavutil/avstring.h" #include "libavutil/bprint.h" @@ -78,6 +79,11 @@ static int subviewer_read_header(AVFormatContext *s) if (!st) return AVERROR(ENOMEM); + res = ffio_ensure_seekback(s->pb, 3); + if (res < 0) + return res; + if (avio_rb24(s->pb) != 0xefbbbf) + avio_seek(s->pb, -3, SEEK_CUR); avpriv_set_pts_info(st, 64, 1, 100); st->codecpar->codec_type = AVMEDIA_TYPE_SUBTITLE; st->codecpar->codec_id = AV_CODEC_ID_SUBVIEWER; |