From d27a3d47cdd114cfcf450bf4d54664430dfce29d Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Mon, 3 Apr 2017 10:22:38 +0900 Subject: String#initialize to make a string empty; ref #3574 --- src/string.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/string.c b/src/string.c index c36b7524a..11abdc051 100644 --- a/src/string.c +++ b/src/string.c @@ -1665,9 +1665,11 @@ mrb_str_init(mrb_state *mrb, mrb_value self) { mrb_value str2; - if (mrb_get_args(mrb, "|S", &str2) == 1) { - str_replace(mrb, mrb_str_ptr(self), mrb_str_ptr(str2)); + if (mrb_get_args(mrb, "|S", &str2) == 0) { + struct RString *s = str_new(mrb, 0, 0); + str2 = mrb_obj_value(s); } + str_replace(mrb, mrb_str_ptr(self), mrb_str_ptr(str2)); return self; } -- cgit v1.2.3