From 681d1e79b734c8dfd2580448e60bf26bd1d8d16f Mon Sep 17 00:00:00 2001 From: nagachika Date: Wed, 21 Mar 2018 15:04:00 +0000 Subject: merge revision(s) 62040: [Backport #14388] string.c: clear substring code range * string.c (str_substr): substring of broken code range string may be valid or broken. patch by tommy (Masahiro Tomita) at [ruby-dev:50430] [Bug #14388]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_4@62875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- string.c | 1 + 1 file changed, 1 insertion(+) (limited to 'string.c') diff --git a/string.c b/string.c index 0a5f802452..c065a8e2b6 100644 --- a/string.c +++ b/string.c @@ -2451,6 +2451,7 @@ str_substr(VALUE str, long beg, long len, int empty) str2 = str_new_shared(rb_obj_class(str2), str2); RSTRING(str2)->as.heap.ptr += ofs; RSTRING(str2)->as.heap.len = len; + ENC_CODERANGE_CLEAR(str2); } else { if (!len && !empty) return Qnil; -- cgit v1.2.3