diff --git a/ChangeLog b/ChangeLog index f1b7567548..f06afad953 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +Mon Dec 15 18:53:17 2008 Yukihiro Matsumoto + + * lib/sync.rb (Sync_m#sync_try_lock): wrong variable name fixed. + a patch from [ruby-core:20561] + + * lib/sync.rb (Sync_m::Err.Fail): turn off Thread.critical before + exit. + Thu Dec 11 21:09:47 2008 Akinori MUSHA * enumerator.c (enumerator_next, enumerator_rewind), diff --git a/lib/sync.rb b/lib/sync.rb index 79522ed885..9e522c2466 100644 --- a/lib/sync.rb +++ b/lib/sync.rb @@ -54,6 +54,7 @@ module Sync_m # exceptions class Err < StandardError def Err.Fail(*opt) + Thread.critical = false fail self, sprintf(self::Message, *opt) end @@ -129,10 +130,10 @@ module Sync_m # locking methods. def sync_try_lock(mode = EX) - return unlock if sync_mode == UN + return unlock if mode == UN Thread.critical = true - ret = sync_try_lock_sub(sync_mode) + ret = sync_try_lock_sub(mode) Thread.critical = false ret end