summaryrefslogtreecommitdiffstats
path: root/mpvcore
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-11-21 15:59:00 +0100
committerwm4 <wm4@nowhere>2013-11-21 15:59:00 +0100
commitd585382f0ef9cf6c8e5e481bb2f4f18a30feca59 (patch)
treede9724356de557aa09712803613aef45f8f497cd /mpvcore
parent287d2e060319f741e394802d3f09c44432945077 (diff)
downloadmpv-d585382f0ef9cf6c8e5e481bb2f4f18a30feca59.tar.bz2
mpv-d585382f0ef9cf6c8e5e481bb2f4f18a30feca59.tar.xz
timeline: reject mplayer2 EDL files, change EDL header
This was forgotten when the parser for mplayer2 EDL files was removed. Change the header of the mpv EDL format to include a '#', so a naive parser could skip the header as comment. (Maybe this is questionable; on the other hand, if it can be simpler, why not.) Also, strip the header in demux_edl.c before passing on the data, so the header check doesn't need to be duplicated in tl_mpv_edl.c.
Diffstat (limited to 'mpvcore')
-rw-r--r--mpvcore/player/mp_core.h2
-rw-r--r--mpvcore/player/timeline/tl_mpv_edl.c6
2 files changed, 2 insertions, 6 deletions
diff --git a/mpvcore/player/mp_core.h b/mpvcore/player/mp_core.h
index 2ea65f54be..4e15f49c49 100644
--- a/mpvcore/player/mp_core.h
+++ b/mpvcore/player/mp_core.h
@@ -428,8 +428,6 @@ void update_subtitles(struct MPContext *mpctx);
void build_ordered_chapter_timeline(struct MPContext *mpctx);
// timeline/tl_mpv_edl.c
void build_mpv_edl_timeline(struct MPContext *mpctx);
-// timeline/tl_edl.c
-void build_edl_timeline(struct MPContext *mpctx);
// timeline/tl_cue.c
void build_cue_timeline(struct MPContext *mpctx);
diff --git a/mpvcore/player/timeline/tl_mpv_edl.c b/mpvcore/player/timeline/tl_mpv_edl.c
index 1f4bbc268e..fc0b6ebeeb 100644
--- a/mpvcore/player/timeline/tl_mpv_edl.c
+++ b/mpvcore/player/timeline/tl_mpv_edl.c
@@ -56,16 +56,14 @@ static bool parse_time(bstr str, double *out_time)
}
/* Returns a list of parts, or NULL on parse error.
- * Syntax:
- * url ::= ['edl://'|'mpv EDL v0\n'] <entry> ( (';' | '\n') <entry> )*
+ * Syntax (without file header or URI prefix):
+ * url ::= <entry> ( (';' | '\n') <entry> )*
* entry ::= <param> ( <param> ',' )*
* param ::= [<string> '='] (<string> | '%' <number> '%' <bytes>)
*/
static struct tl_parts *parse_edl(bstr str)
{
struct tl_parts *tl = talloc_zero(NULL, struct tl_parts);
- if (!bstr_eatstart0(&str, "edl://"))
- bstr_eatstart0(&str, "mpv EDL v0\n");
while (str.len) {
if (bstr_eatstart0(&str, "#"))
bstr_split_tok(str, "\n", &(bstr){0}, &str);