Project

General

Profile

« Previous | Next » 

Revision 4d9c5875

Added by usa (Usaku NAKAMURA) over 4 years ago

merge revision(s) f91879a7b548284c93743168acfd11e3d2aeefac,9557069299ac3b96691040a541afa65761a724ad: [Backport #15992]

    handle_interrupt to defend monitor state [Bug #15992]

    If an exception is raised from another thread for example Timeout
    and this thread is just after `mon_exit`'s `@mon_owner = nil`,
    the exception breaks the state of MonitorMixin. To prevent that situation,
    it need to block interruption in mon_enter and mon_exit.

    Avoid creating Hash objects per each mon_synchronize call (#2393)

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