[ruby-cvs:56624] tmm1:r49474 (trunk): gc.c: ensure GC state is consistent during VM shutdown

tmm1 at ruby-lang.org tmm1 at ruby-lang.org
Tue Feb 3 05:58:34 JST 2015


tmm1	2015-02-03 05:58:32 +0900 (Tue, 03 Feb 2015)

  New Revision: 49474

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=49474

  Log:
    gc.c: ensure GC state is consistent during VM shutdown
    
    * gc.c (rb_objspace_free): cause rb_bug if lazy sweep is in progress
      during rb_objspace_free. Adds extra protection for r46340.
      Patch by Vicent Marti. [Bug #10768] [ruby-core:67734]
    * gc.c (rb_objspace_call_finalizer): Ensure GC is completed after
      finalizers have run. We already call gc_rest() before invoking
      finalizers, but finalizer can allocate new objects and start new GC
      cycle, so we call gc_rest() again after finalizers are complete.

  Modified files:
    trunk/ChangeLog
    trunk/gc.c


More information about the ruby-cvs mailing list