diff --git a/NEWS b/NEWS index 93145942aa..ad76ac77cf 100644 --- a/NEWS +++ b/NEWS @@ -34,6 +34,10 @@ with all sufficient information, see the ChangeLog file or Redmine * IO#pread [Feature #4532] * IO#pwrite [Feature #4532] +* IOError + + * exception message "stream closed" is changed [Bug #13405] + * Regexp * Update Onigmo 6.1.1. * Support absent operator https://github.com/k-takata/Onigmo/issues/82 diff --git a/test/lib/test/unit.rb b/test/lib/test/unit.rb index 24a689c736..7357a62359 100644 --- a/test/lib/test/unit.rb +++ b/test/lib/test/unit.rb @@ -225,7 +225,7 @@ module Test rescue Errno::EPIPE died rescue IOError - raise unless ["stream closed","closed stream"].include? $!.message + raise unless /stream closed|closed stream/ =~ $!.message died end end diff --git a/test/lib/test/unit/parallel.rb b/test/lib/test/unit/parallel.rb index 50d4427189..a71db5f56a 100644 --- a/test/lib/test/unit/parallel.rb +++ b/test/lib/test/unit/parallel.rb @@ -61,7 +61,7 @@ module Test begin th.join rescue IOError - raise unless ["stream closed","closed stream"].include? $!.message + raise unless /stream closed|closed stream/ =~ $!.message end i.close diff --git a/thread.c b/thread.c index c28f479b5a..c34565e9a1 100644 --- a/thread.c +++ b/thread.c @@ -4881,7 +4881,8 @@ Init_Thread(void) rb_define_method(rb_cThread, "name=", rb_thread_setname, 1); rb_define_method(rb_cThread, "inspect", rb_thread_inspect, 0); - rb_vm_register_special_exception(ruby_error_stream_closed, rb_eIOError, "stream closed"); + rb_vm_register_special_exception(ruby_error_stream_closed, rb_eIOError, + "stream closed in another thread"); cThGroup = rb_define_class("ThreadGroup", rb_cObject); rb_define_alloc_func(cThGroup, thgroup_s_alloc);