diff --git a/ChangeLog b/ChangeLog index 50094435d6..6b5e0a1e8d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Tue Oct 2 20:16:55 2007 NAKAMURA Usaku + + * win32/win32.c (init_env): refactoring. remove unused code. + Tue Oct 2 12:30:40 2007 Yukihiro Matsumoto * array.c (rb_ary_product): generalized product, now takes diff --git a/win32/win32.c b/win32/win32.c index ce13650cfd..99199c95af 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -372,19 +372,16 @@ init_env(void) SetEnvironmentVariable("HOME", env); } } - if (GetEnvironmentVariable("USER", env, sizeof env)) { - len = strlen(env); - } - if (GetEnvironmentVariable("USERNAME", env, sizeof env)) { - len = strlen(env); - SetEnvironmentVariable("USER", env); - } - else if (GetUserName(env, (len = sizeof env, &len))) { - SetEnvironmentVariable("USER", env); - } - else { - NTLoginName = ""; - return; + + if (!GetEnvironmentVariable("USER", env, sizeof env)) { + if (GetEnvironmentVariable("USERNAME", env, sizeof env) || + GetUserName(env, (len = sizeof env, &len))) { + SetEnvironmentVariable("USER", env); + } + else { + NTLoginName = ""; + return; + } } NTLoginName = strdup(env); }