aboutsummaryrefslogtreecommitdiff
path: root/src/config.c
diff options
context:
space:
mode:
authorJan200101 <sentrycraft123@gmail.com>2021-05-18 17:24:35 +0200
committerJan200101 <sentrycraft123@gmail.com>2021-05-18 17:24:35 +0200
commitaf5181bf2cf567453fa02e36b78e7956eda20085 (patch)
treef9448fd1a4ad4e631c38660bdea36ca00eec4d48 /src/config.c
parent8e7d62f14bd401e4cc8737c06f16e6978b0b9e57 (diff)
downloadpolecat-af5181bf2cf567453fa02e36b78e7956eda20085.tar.gz
polecat-af5181bf2cf567453fa02e36b78e7956eda20085.zip
cleanup windows config stuff, parse wine argv0
Diffstat (limited to 'src/config.c')
-rw-r--r--src/config.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/config.c b/src/config.c
index ebaff3e..02889b0 100644
--- a/src/config.c
+++ b/src/config.c
@@ -7,12 +7,6 @@
#include "config.h"
#include "common.h"
-#ifdef _WIN32
-#define HOMEVAR "USERPROFILE"
-#else
-#define HOMEVAR "HOME"
-#endif
-
static void getXDGDir(const char* envvar, const char* homeext, char* config, const size_t size)
{
char* xdg_var = getenv(envvar);
@@ -23,8 +17,16 @@ static void getXDGDir(const char* envvar, const char* homeext, char* config, con
}
else
{
- char* home = getenv(HOMEVAR);
+ char* home = getenv("HOME");
if (!home) home = "";
+ if (!home)
+ {
+#ifdef _WIN32
+ home = getenv("USERPROFILE");
+ if (!home)
+#endif
+ home = "";
+ }
strncpy(config, home, size);
strncat(config, homeext, size - strlen(config));
}