aboutsummaryrefslogtreecommitdiff
path: root/libsylph/utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsylph/utils.c')
-rw-r--r--libsylph/utils.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/libsylph/utils.c b/libsylph/utils.c
index 1058b83e..c8e3395b 100644
--- a/libsylph/utils.c
+++ b/libsylph/utils.c
@@ -1648,15 +1648,22 @@ const gchar *get_rc_dir(void)
{
static gchar *rc_dir = NULL;
- if (!rc_dir)
+ if (!rc_dir) {
#ifdef G_OS_WIN32
- rc_dir = g_strconcat(get_home_dir(), G_DIR_SEPARATOR_S,
- "Application Data", G_DIR_SEPARATOR_S,
- RC_DIR, NULL);
+ const gchar *appdata;
+
+ appdata = g_getenv("APPDATA");
+ if (appdata)
+ rc_dir = g_strconcat(appdata, G_DIR_SEPARATOR_S,
+ RC_DIR, NULL);
+ else
+ rc_dir = g_strconcat(get_home_dir(), G_DIR_SEPARATOR_S,
+ RC_DIR, NULL);
#else
rc_dir = g_strconcat(get_home_dir(), G_DIR_SEPARATOR_S,
RC_DIR, NULL);
#endif
+ }
return rc_dir;
}