diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2019-07-16 22:51:55 +0900 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-07-16 22:51:55 +0900 |
| commit | 9af3b7c6258de327218dd04e69d76ae68caf17b1 (patch) | |
| tree | dc28add2fe48f97f4d37c4e392a2d6f2605f69eb | |
| parent | d9a656756be1596c3816c22890dd1acec1f8d8eb (diff) | |
| parent | 31492a177c34485e9bcc441e74c208366920f7b2 (diff) | |
| download | mruby-9af3b7c6258de327218dd04e69d76ae68caf17b1.tar.gz mruby-9af3b7c6258de327218dd04e69d76ae68caf17b1.zip | |
Merge pull request #4583 from shuujii/set-MRB_STR_ASCII-flag-in-some-methods-of-String
Copy receiver's `MRB_STR_ASCII` flag in some methods of `String`
| -rw-r--r-- | src/string.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/string.c b/src/string.c index 39b3515a3..6b7cced13 100644 --- a/src/string.c +++ b/src/string.c @@ -487,6 +487,7 @@ mrb_str_byte_subseq(mrb_state *mrb, mrb_value str, mrb_int beg, mrb_int len) s->as.heap.ptr += beg; s->as.heap.len = len; } + RSTR_COPY_ASCII_FLAG(s, orig); return mrb_obj_value(s); } @@ -902,6 +903,7 @@ mrb_str_times(mrb_state *mrb, mrb_value self) memcpy(p + n, p, len-n); } p[RSTR_LEN(str2)] = '\0'; + RSTR_COPY_ASCII_FLAG(str2, mrb_str_ptr(self)); return mrb_obj_value(str2); } @@ -2837,6 +2839,7 @@ mrb_str_inspect(mrb_state *mrb, mrb_value str) } } mrb_str_cat_lit(mrb, result, "\""); + RSTR_COPY_ASCII_FLAG(mrb_str_ptr(result), mrb_str_ptr(str)); return result; } |
