mrb_str_new(mrb, "", len) creates an unmodifiable string object; ref #2674

This commit is contained in:
Yukihiro "Matz" Matsumoto
2014-12-17 08:06:44 +09:00
parent 0c4d053a94
commit a19a6edb7c
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -356,7 +356,7 @@ mrb_str_prepend(mrb_state *mrb, mrb_value self)
}
s2 = mrb_str_ptr(other);
len = RSTR_LEN(s1) + RSTR_LEN(s2);
temp_str = mrb_str_new(mrb, "", RSTR_LEN(s1));
temp_str = mrb_str_new(mrb, NULL, RSTR_LEN(s1));
temp_s = mrb_str_ptr(temp_str);
memcpy(RSTR_PTR(temp_s), RSTR_PTR(s1), RSTR_LEN(s1));
if (RSTRING_CAPA(self) < len) {
+1 -1
View File
@@ -163,7 +163,7 @@ str_new(mrb_state *mrb, const char *p, size_t len)
{
struct RString *s;
if (mrb_ro_data_p(p)) {
if (p && mrb_ro_data_p(p)) {
return str_new_static(mrb, p, len);
}
s = mrb_obj_alloc_string(mrb);