Project

General

Profile

« Previous | Next » 

Revision 9f20ee51

Added by Eric Wong over 8 years ago

marshal.c: use hidden objects to allow recycling

Hidden objects (klass == 0) are not visible to Ruby code invoked
from other threads or signal handlers, so they can never be
accessed from other contexts. This makes it safe to call
rb_gc_force_recycle on the object slot after releasing malloc
memory.

  • marshal.c (rb_marshal_dump_limited): hide dump_arg and recycle when done
    (rb_marshal_load_with_proc): hide load_arg and recycle when done
    [ruby-core:79518]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e