summaryrefslogtreecommitdiffstats
path: root/core/mplayer.c
diff options
context:
space:
mode:
authorStefano Pigozzi <stefano.pigozzi@gmail.com>2012-12-09 15:05:21 +0100
committerStefano Pigozzi <stefano.pigozzi@gmail.com>2012-12-15 17:38:00 +0100
commitfab9febdc3a863c157a56cc4de2418cbb9665844 (patch)
tree8c442f1f04d67587d91f7f5427d5c90d7a99ff0e /core/mplayer.c
parentc7bf5111c7db05dc5b1750ff285e343849293dd3 (diff)
downloadmpv-fab9febdc3a863c157a56cc4de2418cbb9665844.tar.bz2
mpv-fab9febdc3a863c157a56cc4de2418cbb9665844.tar.xz
path: add mp_find_config_file and reorganize some of the code
Add `mp_find_config_file` to search different known paths and use that in ass_mp to look for the fontconfig configuration file. Some incidental changes spawned by this feature where: * Buffer allocation for the strings containing the paths is now performed with talloc. All of the allocations are done on a NULL context, but it still improves readability of the code. * Move the OSX function for lookup inside of a bundle: this code path was currently not used by the bundle generated with `make osxbundle`. The plan is to use it again in a future commit to get a fontconfig config file.
Diffstat (limited to 'core/mplayer.c')
-rw-r--r--core/mplayer.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/core/mplayer.c b/core/mplayer.c
index c68c4f3dc2..c57062517d 100644
--- a/core/mplayer.c
+++ b/core/mplayer.c
@@ -702,13 +702,14 @@ static bool parse_cfgfiles(struct MPContext *mpctx, m_config_t *conf)
if (!(opts->noconfig & 2) &&
m_config_parse_config_file(conf, MPLAYER_CONFDIR "/mpv.conf") < 0)
return false;
- if ((conffile = get_path("")) == NULL)
+ if ((conffile = mp_find_user_config_file("")) == NULL)
mp_tmsg(MSGT_CPLAYER, MSGL_WARN, "Cannot find HOME directory.\n");
else {
mkdir(conffile, 0777);
- free(conffile);
- if ((conffile = get_path("config")) == NULL)
- mp_tmsg(MSGT_CPLAYER, MSGL_ERR, "get_path(\"config\") problem\n");
+ talloc_free(conffile);
+ if ((conffile = mp_find_user_config_file("config")) == NULL)
+ mp_tmsg(MSGT_CPLAYER, MSGL_ERR,
+ "mp_find_user_config_file(\"config\") problem\n");
else {
if ((conffile_fd = open(conffile, O_CREAT | O_EXCL | O_WRONLY,
0666)) != -1) {
@@ -720,7 +721,7 @@ static bool parse_cfgfiles(struct MPContext *mpctx, m_config_t *conf)
if (!(opts->noconfig & 1) &&
m_config_parse_config_file(conf, conffile) < 0)
return false;
- free(conffile);
+ talloc_free(conffile);
}
}
return true;
@@ -826,10 +827,10 @@ static void load_per_file_config(m_config_t *conf, const char * const file)
return;
}
- if ((confpath = get_path(name)) != NULL) {
+ if ((confpath = mp_find_user_config_file(name)) != NULL) {
try_load_config(conf, confpath);
- free(confpath);
+ talloc_free(confpath);
}
}