demux_edl: disallow nested edl to avoid infinite loop

Found by OSS-Fuzz.
This commit is contained in:
Kacper Michajłow 2024-11-01 13:53:26 +01:00
parent 1a522b4a72
commit de42e11662
2 changed files with 5 additions and 0 deletions

View File

@ -0,0 +1 @@
nested edl are no longer supported; flatten the edl or use a playlist with multiple edl entries

View File

@ -451,6 +451,10 @@ static struct timeline_par *build_timeline(struct timeline *root,
struct tl_part *part = &parts->parts[n];
struct demuxer *source = NULL;
if (!bstrcasecmp0(mp_split_proto(bstr0(part->filename), NULL), "edl")) {
MP_ERR(root, "Nested EDL is not allowed.\n");
goto error;
}
if (tl->dash) {
part->offset = starttime;
if (part->length <= 0)