From: Michael R Sweet Date: Wed, 14 Sep 2022 21:59:25 +0000 (-0400) Subject: Use forward slashes for Windows home directory. X-Git-Tag: v2.4.3~133 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2c66ad607b192320d0bfc17f1520cfc6f4fbcf43;p=thirdparty%2Fcups.git Use forward slashes for Windows home directory. --- diff --git a/cups/globals.c b/cups/globals.c index 46daa18c54..73e660912f 100644 --- a/cups/globals.c +++ b/cups/globals.c @@ -184,7 +184,8 @@ cups_globals_alloc(void) #ifdef _WIN32 HKEY key; /* Registry key */ DWORD size; /* Size of string */ - static char installdir[1024] = "", /* Install directory */ + static char homedir[1024] = "", /* Home directory */ + installdir[1024] = "", /* Install directory */ confdir[1024] = "", /* Server root directory */ localedir[1024] = ""; /* Locale directory */ #endif /* _WIN32 */ @@ -274,7 +275,26 @@ cups_globals_alloc(void) if ((cg->localedir = getenv("LOCALEDIR")) == NULL) cg->localedir = localedir; - cg->home = getenv("USERPROFILE"); + if (!homedir[0]) + { + const char *userprofile = getenv("USERPROFILE"); + // User profile (home) directory + char *homeptr; // Pointer into homedir + + DEBUG_printf(("cups_globals_alloc: USERPROFILE=\"%s\"", userprofile)); + + strlcpy(homedir, userprofile, sizeof(homedir)); + for (homeptr = homedir; *homeptr; homeptr ++) + { + // Convert back slashes to forward slashes + if (*homeptr == '\\') + *homeptr = '/'; + } + + DEBUG_printf(("cups_globals_alloc: homedir=\"%s\"", homedir)); + } + + cg->home = homedir; #else # ifdef HAVE_GETEUID