From 260d1ac2ca8711971c48e14bd535aeeb20f6ed1d Mon Sep 17 00:00:00 2001 From: nagachika Date: Fri, 15 Apr 2016 16:07:07 +0000 Subject: merge revision(s) 54598,54600: [Backport #12290] * thread.c (get_initialized_threadptr): extract ensuring that the thread is initialized. * thread.c (rb_thread_setname): thread must be initialized to set the name. [ruby-core:74963] [Bug #12290] * thread.c (rb_thread_setname): defer setting native thread name set in initialize until the native thread is created. [ruby-core:74963] [Bug #12290] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@54607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/ruby/test_thread.rb | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_thread.rb b/test/ruby/test_thread.rb index dc929ce4fd..c90c369bb7 100644 --- a/test/ruby/test_thread.rb +++ b/test/ruby/test_thread.rb @@ -1082,4 +1082,10 @@ q.pop t.kill t.join end + + def test_thread_setname_in_initialize + bug12290 = '[ruby-core:74963] [Bug #12290]' + c = Class.new(Thread) {def initialize() self.name = "foo"; super; end} + assert_equal("foo", c.new {Thread.current.name}.value) + end end -- cgit v1.2.3