mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
hash.c: refine error message
* hash.c (ruby_setenv): refine error message so include the variable name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41520 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
b9c94bce7f
commit
79031be880
2 changed files with 11 additions and 9 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Fri Jun 21 14:31:29 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* hash.c (ruby_setenv): refine error message so include the variable
|
||||||
|
name.
|
||||||
|
|
||||||
Fri Jun 21 14:15:08 2013 Koichi Sasada <ko1@atdot.net>
|
Fri Jun 21 14:15:08 2013 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
* gc.c: fix to use total_allocated_object_num and heaps_used
|
* gc.c: fix to use total_allocated_object_num and heaps_used
|
||||||
|
|
15
hash.c
15
hash.c
|
@ -2489,8 +2489,7 @@ ruby_setenv(const char *name, const char *value)
|
||||||
int failed = 0;
|
int failed = 0;
|
||||||
if (strchr(name, '=')) {
|
if (strchr(name, '=')) {
|
||||||
fail:
|
fail:
|
||||||
errno = EINVAL;
|
rb_syserr_fail_str(EINVAL, rb_sprintf("ruby_setenv(%s)", name));
|
||||||
rb_sys_fail("ruby_setenv");
|
|
||||||
}
|
}
|
||||||
if (value) {
|
if (value) {
|
||||||
const char* p = GetEnvironmentStringsA();
|
const char* p = GetEnvironmentStringsA();
|
||||||
|
@ -2518,21 +2517,20 @@ ruby_setenv(const char *name, const char *value)
|
||||||
#undef unsetenv
|
#undef unsetenv
|
||||||
if (value) {
|
if (value) {
|
||||||
if (setenv(name, value, 1))
|
if (setenv(name, value, 1))
|
||||||
rb_sys_fail("setenv");
|
rb_sys_fail_str(rb_sprintf("setenv(%s)", name));
|
||||||
} else {
|
} else {
|
||||||
#ifdef VOID_UNSETENV
|
#ifdef VOID_UNSETENV
|
||||||
unsetenv(name);
|
unsetenv(name);
|
||||||
#else
|
#else
|
||||||
if (unsetenv(name))
|
if (unsetenv(name))
|
||||||
rb_sys_fail("unsetenv");
|
rb_sys_fail_str(rb_sprintf("unsetenv(%s)", name));
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#elif defined __sun
|
#elif defined __sun
|
||||||
size_t len;
|
size_t len;
|
||||||
char **env_ptr, *str;
|
char **env_ptr, *str;
|
||||||
if (strchr(name, '=')) {
|
if (strchr(name, '=')) {
|
||||||
errno = EINVAL;
|
rb_syserr_fail_str(EINVAL, rb_sprintf("ruby_setenv(%s)", name));
|
||||||
rb_sys_fail("ruby_setenv");
|
|
||||||
}
|
}
|
||||||
len = strlen(name);
|
len = strlen(name);
|
||||||
for (env_ptr = GET_ENVIRON(environ); (str = *env_ptr) != 0; ++env_ptr) {
|
for (env_ptr = GET_ENVIRON(environ); (str = *env_ptr) != 0; ++env_ptr) {
|
||||||
|
@ -2546,14 +2544,13 @@ ruby_setenv(const char *name, const char *value)
|
||||||
str = malloc(len += strlen(value) + 2);
|
str = malloc(len += strlen(value) + 2);
|
||||||
snprintf(str, len, "%s=%s", name, value);
|
snprintf(str, len, "%s=%s", name, value);
|
||||||
if (putenv(str))
|
if (putenv(str))
|
||||||
rb_sys_fail("putenv");
|
rb_sys_fail_str(rb_sprintf("putenv(%s)", name));
|
||||||
}
|
}
|
||||||
#else /* WIN32 */
|
#else /* WIN32 */
|
||||||
size_t len;
|
size_t len;
|
||||||
int i;
|
int i;
|
||||||
if (strchr(name, '=')) {
|
if (strchr(name, '=')) {
|
||||||
errno = EINVAL;
|
rb_syserr_fail_str(EINVAL, rb_sprintf("ruby_setenv(%s)", name));
|
||||||
rb_sys_fail("ruby_setenv");
|
|
||||||
}
|
}
|
||||||
i=envix(name); /* where does it go? */
|
i=envix(name); /* where does it go? */
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue