summaryrefslogtreecommitdiff
path: root/string.c
diff options
context:
space:
mode:
authorNARUSE, Yui <naruse@airemix.jp>2023-01-31 23:46:50 +0900
committerNARUSE, Yui <naruse@airemix.jp>2023-01-31 23:46:50 +0900
commit40e0b1e123503805c16a2a9aafae0a5c302c20d1 (patch)
tree096bde10ac9a07fd199ae128e2d86dacae6b702a /string.c
parent22bfad0ec9968be4c99c8c68f2c809b833069ea7 (diff)
merge revision(s) 9726736006b3f74635fd8af05814fe0908e2cf84: [Backport #19327]
Set STR_SHARED_ROOT flag on root of string --- string.c | 1 + 1 file changed, 1 insertion(+)
Diffstat (limited to 'string.c')
-rw-r--r--string.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/string.c b/string.c
index cae87907c3..6773ed2d86 100644
--- a/string.c
+++ b/string.c
@@ -1787,6 +1787,7 @@ str_duplicate_setup(VALUE klass, VALUE str, VALUE dup)
else {
RSTRING(dup)->as.heap.len = RSTRING_LEN(str);
RSTRING(dup)->as.heap.ptr = RSTRING_PTR(str);
+ FL_SET(root, STR_SHARED_ROOT);
RB_OBJ_WRITE(dup, &RSTRING(dup)->as.heap.aux.shared, root);
flags |= RSTRING_NOEMBED | STR_SHARED;
}