summaryrefslogtreecommitdiffstats
path: root/demux
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2018-05-18 22:19:10 +0200
committerwm4 <wm4@nowhere>2018-05-24 19:56:35 +0200
commit76dc5d9aa92f5c91c728004214f7b08c3a85a5f6 (patch)
tree5e7514e6376067c98645b921eb698381aa496b0b /demux
parent12d1404b04e90f5357882e5c1048d92305248cb9 (diff)
downloadmpv-76dc5d9aa92f5c91c728004214f7b08c3a85a5f6.tar.bz2
mpv-76dc5d9aa92f5c91c728004214f7b08c3a85a5f6.tar.xz
command: make loadlist command async and abortable
Don't allow it to freeze everything when loading a playlist from network (although you definitely shouldn't do that, but whatever). This also affects the really obscure --ordered-chapters-files option. The --playlist option on the other hand has no choice but to freeze the shit, because there's no concept of aborting the player during command line parsing.
Diffstat (limited to 'demux')
-rw-r--r--demux/demux_mkv_timeline.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/demux/demux_mkv_timeline.c b/demux/demux_mkv_timeline.c
index 277ff9c1ee..48d8c444b3 100644
--- a/demux/demux_mkv_timeline.c
+++ b/demux/demux_mkv_timeline.c
@@ -264,7 +264,8 @@ static void find_ordered_chapter_sources(struct tl_ctx *ctx)
MP_INFO(ctx, "Loading references from '%s'.\n",
opts->ordered_chapters_files);
struct playlist *pl =
- playlist_parse_file(opts->ordered_chapters_files, ctx->global);
+ playlist_parse_file(opts->ordered_chapters_files,
+ ctx->tl->cancel, ctx->global);
talloc_steal(tmp, pl);
for (struct playlist_entry *e = pl ? pl->first : NULL; e; e = e->next)
MP_TARRAY_APPEND(tmp, filenames, num_filenames, e->filename);