String#replace should check replacing string; fix #3374

This issue was reported by https://hackerone.com/tunz
This commit is contained in:
Yukihiro "Matz" Matsumoto
2017-01-11 17:51:11 +09:00
parent 06b2e6a76c
commit e1ff71029f
+1
View File
@@ -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);