Skip to content

Commit

Permalink
Don't force callers to be ASCII (when some of them already aren't).
Browse files Browse the repository at this point in the history
TBR=tfarina
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/3137015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56451 0039d316-1c4b-4281-b951-d872f2087c98
  • Loading branch information
pkasting@chromium.org committed Aug 17, 2010
1 parent 30be4cd commit c106886
Showing 1 changed file with 7 additions and 8 deletions.
15 changes: 7 additions & 8 deletions base/environment.cc
Original file line number Diff line number Diff line change
Expand Up @@ -78,22 +78,21 @@ class EnvironmentImpl : public base::Environment {
bool SetVarImpl(const char* variable_name, const std::string& new_value) {
#if defined(OS_POSIX)
// On success, zero is returned.
return setenv(variable_name, new_value.c_str(), 1) == 0;
return !setenv(variable_name, new_value.c_str(), 1);
#elif defined(OS_WIN)
// On success, a nonzero is returned.
return ::SetEnvironmentVariable(ASCIIToWide(variable_name).c_str(),
ASCIIToWide(new_value).c_str()) != 0;
// On success, a nonzero value is returned.
return !!SetEnvironmentVariable(UTF8ToWide(variable_name).c_str(),
UTF8ToWide(new_value).c_str());
#endif
}

bool UnSetVarImpl(const char* variable_name) {
#if defined(OS_POSIX)
// On success, zero is returned.
return unsetenv(variable_name) == 0;
return !unsetenv(variable_name);
#elif defined(OS_WIN)
// On success, a nonzero is returned.
return ::SetEnvironmentVariable(ASCIIToWide(variable_name).c_str(),
NULL) != 0;
// On success, a nonzero value is returned.
return !!SetEnvironmentVariable(UTF8ToWide(variable_name).c_str(), NULL);
#endif
}
};
Expand Down

0 comments on commit c106886

Please sign in to comment.