1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

eval.c: determine exit status and signal before finalization

* eval.c (ruby_cleanup): determine exit status and signal to terminate
  before finalization, to get rid of access destroyed T_DATA execption
  object.  [ruby-core:58643] [Bug #9167]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2013-11-30 08:46:41 +00:00
parent 520f0fec95
commit 04ca48fc38
4 changed files with 58 additions and 6 deletions

View file

@ -0,0 +1,14 @@
require 'test/unit'
require_relative '../../ruby/envutil'
module Bug
class TestException < Test::Unit::TestCase
def test_cleanup_data_error
bug9167 = '[ruby-core:58643] [Bug #9167]'
assert_normal_exit(<<-'end;', bug9167) # do
require '-test-/exception'
raise Bug::Exception::DataError, "Error"
end;
end
end
end