@@ -348,6 +348,10 @@ static VALUE Unpacker_registered_types_internal(VALUE self)
348348
349349static VALUE Unpacker_register_type (int argc , VALUE * argv , VALUE self )
350350{
351+ if (OBJ_FROZEN (self )) {
352+ rb_raise (rb_eFrozenError , "can't modify frozen MessagePack::Unpacker" );
353+ }
354+
351355 msgpack_unpacker_t * uk = MessagePack_Unpacker_get (self );
352356
353357 int ext_type ;
@@ -446,7 +450,7 @@ void MessagePack_Unpacker_module_init(VALUE mMessagePack)
446450 rb_define_method (cMessagePack_Unpacker , "read_array_header" , Unpacker_read_array_header , 0 );
447451 rb_define_method (cMessagePack_Unpacker , "read_map_header" , Unpacker_read_map_header , 0 );
448452 rb_define_method (cMessagePack_Unpacker , "feed" , Unpacker_feed_reference , 1 );
449- rb_define_method (cMessagePack_Unpacker , "feed_reference" , Unpacker_feed_reference , 1 );
453+ rb_define_alias (cMessagePack_Unpacker , "feed_reference" , "feed" );
450454 rb_define_method (cMessagePack_Unpacker , "each" , Unpacker_each , 0 );
451455 rb_define_method (cMessagePack_Unpacker , "feed_each" , Unpacker_feed_each , 1 );
452456 rb_define_method (cMessagePack_Unpacker , "reset" , Unpacker_reset , 0 );
0 commit comments