diff options
Diffstat (limited to 'test/rubygems/test_require.rb')
-rw-r--r-- | test/rubygems/test_require.rb | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/test/rubygems/test_require.rb b/test/rubygems/test_require.rb index a106fc21a6..e292ce226d 100644 --- a/test/rubygems/test_require.rb +++ b/test/rubygems/test_require.rb @@ -70,10 +70,12 @@ class TestGemRequire < Gem::TestCase def create_sync_thread Thread.new do - yield - ensure - FILE_ENTERED_LATCH.release - FILE_EXIT_LATCH.await + begin + yield + ensure + FILE_ENTERED_LATCH.release + FILE_EXIT_LATCH.await + end end end @@ -100,8 +102,8 @@ class TestGemRequire < Gem::TestCase assert t1.join, "thread 1 should exit" assert t2.join, "thread 2 should exit" ensure - Object.send :remove_const, :FILE_ENTERED_LATCH - Object.send :remove_const, :FILE_EXIT_LATCH + Object.send :remove_const, :FILE_ENTERED_LATCH if Object.const_defined? :FILE_ENTERED_LATCH + Object.send :remove_const, :FILE_EXIT_LATCH if Object.const_defined? :FILE_EXIT_LATCH end def test_require_is_not_lazy_with_exact_req |