From 5872fd6f6cc5ddde33df94fb11e773eeb653e55e Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Thu, 1 Dec 2022 22:50:25 +0900 Subject: [Feature #19163] Marshal-loaded Data object also should be frozen --- struct.c | 1 + 1 file changed, 1 insertion(+) (limited to 'struct.c') diff --git a/struct.c b/struct.c index def15b0186..3733669eab 100644 --- a/struct.c +++ b/struct.c @@ -786,6 +786,7 @@ VALUE rb_struct_initialize(VALUE self, VALUE values) { rb_struct_initialize_m(RARRAY_LENINT(values), RARRAY_CONST_PTR(values), self); + if (rb_obj_is_kind_of(self, rb_cData)) OBJ_FREEZE_RAW(self); RB_GC_GUARD(values); return Qnil; } -- cgit v1.2.1