summaryrefslogtreecommitdiffstats
path: root/player/configfiles.c
diff options
context:
space:
mode:
Diffstat (limited to 'player/configfiles.c')
-rw-r--r--player/configfiles.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/player/configfiles.c b/player/configfiles.c
index 3ef6a66fb0..95eb91c377 100644
--- a/player/configfiles.c
+++ b/player/configfiles.c
@@ -192,6 +192,14 @@ static char *mp_get_playback_resume_config_filename(struct MPContext *mpctx,
conf = talloc_asprintf_append(conf, "%02X", md5[i]);
if (!mpctx->cached_watch_later_configdir) {
+ char *wl_dir = mpctx->opts->watch_later_directory;
+ if (wl_dir && wl_dir[0]) {
+ mpctx->cached_watch_later_configdir =
+ mp_get_user_path(mpctx, mpctx->global, wl_dir);
+ }
+ }
+
+ if (!mpctx->cached_watch_later_configdir) {
mpctx->cached_watch_later_configdir =
mp_find_user_config_file(mpctx, mpctx->global, MP_WATCH_LATER_CONF);
}
@@ -314,12 +322,12 @@ void mp_write_watch_later_conf(struct MPContext *mpctx)
goto exit;
}
- mp_mk_config_dir(mpctx->global, MP_WATCH_LATER_CONF);
-
conffile = mp_get_playback_resume_config_filename(mpctx, cur->filename);
if (!conffile)
goto exit;
+ mp_mk_config_dir(mpctx->global, mpctx->cached_watch_later_configdir);
+
MP_INFO(mpctx, "Saving state.\n");
FILE *file = fopen(conffile, "wb");