mirror of https://github.com/mpv-player/mpv
path: default ~~ paths to home directory
The code for expanding the ~~ prefix used mp_find_config_file(), which strictly looks for _existing_ files in any config path (e.g. not just the user-local one, but also system-wide config). If no such file exists, it simply returns NULL, which makes the code below just return the literal, unexpanded path. Change this so that it'll resolve the path to the user-local config directory instead. Requested in #3591.
This commit is contained in:
parent
b81ae52f50
commit
86ab4b8a9f
|
@ -169,6 +169,12 @@ char *mp_get_user_path(void *talloc_ctx, struct mpv_global *global,
|
|||
const char *rest0 = rest.start; // ok in this case
|
||||
if (bstr_equals0(prefix, "~")) {
|
||||
res = mp_find_config_file(talloc_ctx, global, rest0);
|
||||
if (!res) {
|
||||
void *tmp = talloc_new(NULL);
|
||||
const char *p = mp_get_platform_path(tmp, global, "home");
|
||||
res = mp_path_join_bstr(talloc_ctx, bstr0(p), rest);
|
||||
talloc_free(tmp);
|
||||
}
|
||||
} else if (bstr_equals0(prefix, "")) {
|
||||
res = mp_path_join_bstr(talloc_ctx, bstr0(getenv("HOME")), rest);
|
||||
} else if (bstr_eatstart0(&prefix, "~")) {
|
||||
|
|
Loading…
Reference in New Issue