diff --git a/ChangeLog b/ChangeLog index aa89caf350..80194ce195 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Thu Sep 30 10:55:38 2010 NAKAMURA Usaku + + * hash.c (ruby_setenv): workaround for old Windows. a patch from + Heesob Park. [ruby-core:32353] + Thu Sep 30 09:29:06 2010 NARUSE, Yui * lib/uri/common.rb (URI.encode_www_form): change treatment of diff --git a/hash.c b/hash.c index 73f90125f9..3e1731d5a3 100644 --- a/hash.c +++ b/hash.c @@ -2158,7 +2158,8 @@ ruby_setenv(const char *name, const char *value) rb_str_resize(buf, 0); if (!value || !*value) { /* putenv() doesn't handle empty value */ - if (!SetEnvironmentVariable(name,value)) goto fail; + if (!SetEnvironmentVariable(name, value) && + GetLastError() != ERROR_ENVVAR_NOT_FOUND) goto fail; } if (failed) goto fail; #elif defined(HAVE_SETENV) && defined(HAVE_UNSETENV)