summaryrefslogtreecommitdiffhomepage
path: root/src/kernel.c
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-06-01 22:39:40 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2018-06-01 22:39:40 +0900
commitf408143c289b8017883294f13d36d43b50c8bc5d (patch)
tree7d812c8a1886d3bf4cd477f67a104cfac883fea8 /src/kernel.c
parent7ed164ba896f5f3b0fca7c82e5b64230a432c842 (diff)
downloadmruby-f408143c289b8017883294f13d36d43b50c8bc5d.tar.gz
mruby-f408143c289b8017883294f13d36d43b50c8bc5d.zip
The `clone` method should copy object status (e.g. frozen) too; #4030
Diffstat (limited to 'src/kernel.c')
-rw-r--r--src/kernel.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/kernel.c b/src/kernel.c
index 2a50d3126..f378004cb 100644
--- a/src/kernel.c
+++ b/src/kernel.c
@@ -348,6 +348,7 @@ mrb_obj_clone(mrb_state *mrb, mrb_value self)
mrb_field_write_barrier(mrb, (struct RBasic*)p, (struct RBasic*)p->c);
clone = mrb_obj_value(p);
init_copy(mrb, clone, self);
+ p->flags = mrb_obj_ptr(self)->flags;
return clone;
}