diff options
Diffstat (limited to 'encoding.c')
-rw-r--r-- | encoding.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/encoding.c b/encoding.c index 20bc257d4a..7f0ea73ad1 100644 --- a/encoding.c +++ b/encoding.c @@ -122,7 +122,10 @@ rb_data_is_encoding(VALUE obj) static VALUE enc_new(rb_encoding *encoding) { - return TypedData_Wrap_Struct(rb_cEncoding, &encoding_data_type, (void *)encoding); + VALUE enc = TypedData_Wrap_Struct(rb_cEncoding, &encoding_data_type, (void *)encoding); + rb_obj_freeze(enc); + FL_SET_RAW(enc, RUBY_FL_SHAREABLE); + return enc; } static void |