Hi, 2010/9/13 Nobuyoshi Nakada <nobu / ruby-lang.org>: > Hi, > > At Mon, 13 Sep 2010 12:05:11 +0900, > Heesob Park wrote in [ruby-core:32353]: >> ENV.delete raises Invalid argument Exception on Windows. >> >> The error is due to trying SetEnvironmentVariable even if putenv succeeded. > > Does test/ruby/test_env.rb fail now? I can't check it now. > On Windows XP Home SP3: Test run options: --seed 1488 Loaded suite test_env Started EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE Finished in 0.156250 seconds. 1) Error: test_aset(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 2) Error: test_assoc(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 3) Error: test_bracket(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 4) Error: test_bracket(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 5) Error: test_clear(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:223:in `clear' test_env.rb:223:in `test_clear' 6) Error: test_clear(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 7) Failure: test_delete(TestEnv) [test_env.rb:92]: Exception raised: <#<Errno::EINVAL: Invalid argument - ruby_setenv>>. 8) Error: test_delete(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 9) Error: test_each_key(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 10) Error: test_each_pair(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 11) Error: test_each_value(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 12) Error: test_empty_p(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:269:in `clear' test_env.rb:269:in `test_empty_p' 13) Error: test_empty_p(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 14) Error: test_fetch(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:104:in `delete' test_env.rb:104:in `test_fetch' 15) Error: test_fetch(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 16) Error: test_getenv(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 17) Error: test_has_key(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 18) Error: test_has_value(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 19) Error: test_has_value(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 20) Error: test_has_value2(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:297:in `clear' test_env.rb:297:in `test_has_value2' 21) Error: test_has_value2(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 22) Error: test_huge_value(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 23) Error: test_inspect(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:232:in `clear' test_env.rb:232:in `test_inspect' 24) Error: test_inspect(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 25) Error: test_invert(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:352:in `clear' test_env.rb:352:in `test_invert' 26) Error: test_invert(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 27) Error: test_key(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 28) Error: test_keys(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 29) Error: test_keys(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 30) Error: test_rassoc(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:304:in `clear' test_env.rb:304:in `test_rassoc' 31) Error: test_rassoc(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 32) Error: test_rehash(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 33) Error: test_reject(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 34) Error: test_reject_bang(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 35) Error: test_reject_bang(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 36) Error: test_replace(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:360:in `replace' test_env.rb:360:in `test_replace' 37) Error: test_replace(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 38) Error: test_select(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 39) Error: test_select_bang(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 40) Error: test_select_bang(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 41) Error: test_shift(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:342:in `clear' test_env.rb:342:in `test_shift' 42) Error: test_shift(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 43) Error: test_size(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 44) Error: test_to_a(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:11:in `delete' test_env.rb:11:in `setup' 45) Error: test_to_a(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 46) Error: test_to_hash(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 47) Error: test_to_s(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 48) Error: test_update(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:365:in `clear' test_env.rb:365:in `test_update' 49) Error: test_update(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 50) Error: test_values(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 51) Error: test_values_at(TestEnv): Errno::EINVAL: Invalid argument - ruby_setenv test_env.rb:17:in `clear' test_env.rb:17:in `teardown' 34 tests, 209 assertions, 1 failures, 50 errors, 0 skips Test run options: --seed 1488 --------------------------------------------------------------------------------- BTW, On Windows 7, it works fine: Test run options: --seed 34498 Loaded suite test_env Started .................................. Finished in 0.454000 seconds. 34 tests, 391 assertions, 0 failures, 0 errors, 0 skips Test run options: --seed 34498 Regards, Park Heesob