From e1ff71029f95e3274136263adbdc51c662ec52de Mon Sep 17 00:00:00 2001 From: "Yukihiro \"Matz\" Matsumoto" Date: Wed, 11 Jan 2017 17:51:11 +0900 Subject: String#replace should check replacing string; fix #3374 This issue was reported by https://hackerone.com/tunz --- src/string.c | 1 + 1 file changed, 1 insertion(+) (limited to 'src') diff --git a/src/string.c b/src/string.c index b4746545a..d6bdd6975 100644 --- a/src/string.c +++ b/src/string.c @@ -519,6 +519,7 @@ str_replace(mrb_state *mrb, struct RString *s1, struct RString *s2) long len; check_frozen(mrb, s1); + if (s1 == s2) return mrb_obj_value(s1); len = RSTR_LEN(s2); if (RSTR_SHARED_P(s1)) { str_decref(mrb, s1->as.heap.aux.shared); -- cgit v1.2.3