summaryrefslogtreecommitdiff
path: root/hash.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-05-30 09:12:34 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2001-05-30 09:12:34 +0000
commitabfaac7a6cbdbfad9e7c05bc5ebcb4df57906fcb (patch)
tree4d406191345ff9f25e3a3c9ce5f85a3a13e6f7d1 /hash.c
parent4cd1cd7201757185e63a5a33181932a6670887ad (diff)
* ruby.c (proc_options): unexpected SecurityError happens when -T4.
* regex.c (re_compile_pattern): * \1 .. \9 should be backreferences always. * regex.c (re_match): backreferences corresponding to unclosed/unmatched parentheses should fail always. * string.c (rb_str_cat): use rb_str_buf_cat() if possible. [new] * string.c (rb_str_append): ditto. * string.c (rb_str_buf_cat): remove unnecessary check (type, taint, modify) to gain performance. * string.c (rb_str_buf_append): ditto. * string.c (rb_str_buf_new): buffering string function. [new] * string.c (rb_str_buf_append): ditto. * string.c (rb_str_buf_cat): ditto. * time.c (make_time_t): local time adjustment revised. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'hash.c')
-rw-r--r--hash.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/hash.c b/hash.c
index 61400c0b17..7a08b0d500 100644
--- a/hash.c
+++ b/hash.c
@@ -634,11 +634,11 @@ inspect_i(key, value, str)
rb_str_cat2(str, ", ");
}
str2 = rb_inspect(key);
- rb_str_append(str, str2);
+ rb_str_buf_append(str, str2);
OBJ_INFECT(str, str2);
- rb_str_cat2(str, "=>");
+ rb_str_buf_cat2(str, "=>");
str2 = rb_inspect(value);
- rb_str_append(str, str2);
+ rb_str_buf_append(str, str2);
OBJ_INFECT(str, str2);
return ST_CONTINUE;
@@ -650,11 +650,11 @@ inspect_hash(hash)
{
VALUE str;
- str = rb_str_new2("{");
+ str = rb_str_buf_new2("{");
st_foreach(RHASH(hash)->tbl, inspect_i, str);
- rb_str_cat2(str, "}");
-
+ rb_str_buf_cat2(str, "}");
OBJ_INFECT(str, hash);
+
return str;
}
@@ -1266,7 +1266,7 @@ static VALUE
env_inspect()
{
char **env;
- VALUE str = rb_str_new2("{");
+ VALUE str = rb_str_buf_new2("{");
VALUE i;
env = environ;
@@ -1274,18 +1274,18 @@ env_inspect()
char *s = strchr(*env, '=');
if (env != environ) {
- rb_str_cat2(str, ", ");
+ rb_str_buf_cat2(str, ", ");
}
if (s) {
- rb_str_cat2(str, "\"");
- rb_str_cat(str, *env, s-*env);
- rb_str_cat2(str, "\"=>");
+ rb_str_buf_cat2(str, "\"");
+ rb_str_buf_cat(str, *env, s-*env);
+ rb_str_buf_cat2(str, "\"=>");
i = rb_inspect(rb_str_new2(s+1));
- rb_str_append(str, i);
+ rb_str_buf_append(str, i);
}
env++;
}
- rb_str_cat2(str, "}");
+ rb_str_buf_cat2(str, "}");
OBJ_TAINT(str);
return str;