0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 03:52:22 +02:00

Config path functions can return NULL

It's quite unlikely, but functions like mp_find_user_config_file() can
return NULL, e.g. if $HOME is unset.

Fix all the code that didn't check for this correctly yet.
This commit is contained in:
wm4 2013-09-18 19:56:15 +02:00
parent 1298dbdf01
commit 5249cccfcf
2 changed files with 11 additions and 3 deletions

View File

@ -99,6 +99,12 @@ static int control(struct af_instance* af, int cmd, void* arg)
for(i = 1; i < af->data->nch; i++)
s->buf[i] = (uint8_t *)s->buf[0] + i*s->sz*af->data->bps;
if (!s->filename) {
mp_msg(MSGT_AFILTER, MSGL_FATAL, "[export] No filename set.\n",
s->filename);
return AF_ERROR;
}
// Init memory mapping
s->fd = open(s->filename, O_RDWR | O_CREAT | O_TRUNC, 0640);
mp_msg(MSGT_AFILTER, MSGL_INFO, "[export] Exporting to file: %s\n", s->filename);

View File

@ -637,9 +637,11 @@ static void mk_config_dir(char *subdir)
{
void *tmp = talloc_new(NULL);
char *confdir = talloc_steal(tmp, mp_find_user_config_file(""));
if (subdir)
confdir = mp_path_join(tmp, bstr0(confdir), bstr0(subdir));
mkdir(confdir, 0777);
if (confdir) {
if (subdir)
confdir = mp_path_join(tmp, bstr0(confdir), bstr0(subdir));
mkdir(confdir, 0777);
}
talloc_free(tmp);
}