[ruby-cvs:51881] usa:r44736 (ruby_1_9_3): merge revision(s) 39276: [Backport #7825]

usa at ruby-lang.org usa at ruby-lang.org
Wed Jan 29 12:42:51 JST 2014


usa	2014-01-29 12:42:50 +0900 (Wed, 29 Jan 2014)

  New Revision: 44736

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

  Log:
    merge revision(s) 39276: [Backport #7825]
    
    * vm.c (rb_thread_mark): mark a working Proc of bmethod
      (a method defined by define_method) even if the method was removed.
      We could not trace working Proc object which represents the body
      of bmethod if the method was removed (alias/undef/overridden).
      Simply, it was mark miss.
      This patch by Kazuki Tsujimoto. [Bug #7825]
      NOTE: We can brush up this marking because we do not need to mark
      `me' on each living control frame. We need to mark `me's
      only if `me' was free'ed. This is future work after Ruby 2.0.0.
    
    * test/ruby/test_method.rb: add a test.

  Modified directories:
    branches/ruby_1_9_3/
  Modified files:
    branches/ruby_1_9_3/ChangeLog
    branches/ruby_1_9_3/test/ruby/test_method.rb
    branches/ruby_1_9_3/version.h
    branches/ruby_1_9_3/vm.c


More information about the ruby-cvs mailing list