diff options
Diffstat (limited to 'src/common/cfgfiles.c')
-rw-r--r-- | src/common/cfgfiles.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/common/cfgfiles.c b/src/common/cfgfiles.c index b6305cc2..725b9632 100644 --- a/src/common/cfgfiles.c +++ b/src/common/cfgfiles.c @@ -332,7 +332,19 @@ get_xdir (void) if (portable_mode () || !get_reg_str ("Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders", "AppData", out, sizeof (out))) { - xdir = g_strdup (".\\config"); + char *path; + char file[MAX_PATH]; + HMODULE hModule; + + hModule = GetModuleHandle (NULL); + if (GetModuleFileName (hModule, file, sizeof(file))) + { + path = g_path_get_dirname (file); + xdir = g_build_filename (path, "config", NULL); + g_free (path); + } + else + xdir = g_strdup (".\\config"); } else { |