Fix host auth scripts to work with Windows.
Fix simple_host to work when \Users\<username> is on a different drive than the chrome repository.
BUG=none
TEST=run scripts & host process on Windows
Review URL: http://codereview.chromium.org/2822029
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50802 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/remoting/host/simple_host_process.cc b/remoting/host/simple_host_process.cc
index 09f6a96..0f12c43 100644
--- a/remoting/host/simple_host_process.cc
+++ b/remoting/host/simple_host_process.cc
@@ -43,12 +43,13 @@
#if defined(OS_WIN)
const std::wstring kDefaultConfigPath = L".ChromotingConfig.json";
+const wchar_t kHomeDrive[] = L"HOMEDRIVE";
const wchar_t kHomePath[] = L"HOMEPATH";
const wchar_t* GetEnvironmentVar(const wchar_t* x) { return _wgetenv(x); }
#else
-static char* GetEnvironmentVar(const char* x) { return getenv(x); }
-const char kHomePath[] = "HOME";
const std::string kDefaultConfigPath = ".ChromotingConfig.json";
+const char kHomePath[] = "HOME";
+static char* GetEnvironmentVar(const char* x) { return getenv(x); }
#endif
const std::string kFakeSwitchName = "fake";
@@ -81,7 +82,13 @@
// Check the argument to see if we should use a fake capturer and encoder.
bool fake = cmd_line->HasSwitch(kFakeSwitchName);
- FilePath config_path(GetEnvironmentVar(kHomePath));
+#if defined(OS_WIN)
+ std::wstring path = GetEnvironmentVar(kHomeDrive);
+ path += GetEnvironmentVar(kHomePath);
+#else
+ std::string path = GetEnvironmentVar(kHomePath);
+#endif
+ FilePath config_path(path);
config_path = config_path.Append(kDefaultConfigPath);
if (cmd_line->HasSwitch(kConfigSwitchName)) {
config_path = cmd_line->GetSwitchValuePath(kConfigSwitchName);