summaryrefslogtreecommitdiffstats
path: root/player/loadfile.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/loadfile.c')
-rw-r--r--player/loadfile.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/player/loadfile.c b/player/loadfile.c
index f7fc86332c..ded987ae9e 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -211,13 +211,11 @@ static void uninit_demuxer(struct MPContext *mpctx)
for (int i = 0; i < mpctx->num_tracks; i++) {
struct track *track = mpctx->tracks[i];
- assert(!track->dec);
+ assert(!track->dec && !track->d_sub);
assert(!track->vo_c && !track->ao_c);
assert(!track->sink);
assert(!track->remux_sink);
- sub_destroy(track->d_sub);
-
// Demuxers can be added in any order (if they appear mid-stream), and
// we can't know which tracks uses which, so here's some O(n^2) trash.
for (int n = 0; n < num_demuxers; n++) {
@@ -681,8 +679,6 @@ bool mp_remove_track(struct MPContext *mpctx, struct track *track)
struct demuxer *d = track->demuxer;
- sub_destroy(track->d_sub);
-
if (mpctx->seek_slave == track)
mpctx->seek_slave = NULL;