Rework resolve_config_file()

This commit is contained in:
Martin Lund 2024-04-14 12:52:28 +02:00
parent 76a7a56e85
commit de0a7c547f

View file

@ -393,31 +393,37 @@ static int resolve_config_file(void)
char *xdg = getenv("XDG_CONFIG_HOME"); char *xdg = getenv("XDG_CONFIG_HOME");
if (xdg) if (xdg)
{ {
asprintf(&c.path, "%s/tio/config", xdg); if (asprintf(&c.path, "%s/tio/config", xdg) != -1)
{
if (access(c.path, F_OK) == 0) if (access(c.path, F_OK) == 0)
{ {
return 0; return 0;
} }
free(c.path); free(c.path);
} }
}
char *home = getenv("HOME"); char *home = getenv("HOME");
if (home) if (home)
{ {
asprintf(&c.path, "%s/.config/tio/config", home); if (asprintf(&c.path, "%s/.config/tio/config", home) != -1)
{
if (access(c.path, F_OK) == 0) if (access(c.path, F_OK) == 0)
{ {
return 0; return 0;
} }
free(c.path); free(c.path);
}
asprintf(&c.path, "%s/.tioconfig", home); if (asprintf(&c.path, "%s/.tioconfig", home) != -1)
{
if (access(c.path, F_OK) == 0) if (access(c.path, F_OK) == 0)
{ {
return 0; return 0;
} }
free(c.path); free(c.path);
} }
}
c.path = NULL; c.path = NULL;
return -EINVAL; return -EINVAL;