diff options
-rw-r--r-- | ChangeLog | 11 | ||||
-rw-r--r-- | test/ruby/test_thread.rb | 1 | ||||
-rw-r--r-- | win32/win32.c | 2 |
3 files changed, 13 insertions, 1 deletions
@@ -1,3 +1,14 @@ +Sat Apr 7 22:32:00 2012 Hiroshi Shirosaki <h.shirosaki@gmail.com> + + * test/ruby/test_thread.rb + (TestThreadGroup#test_thread_timer_and_interrupt): skip on Windows. + Process.kill cannot kill a subprocess if CREATE_NEW_PROCESS_GROUP + flag is not specified in a call to CreateProcessW(). + + * win32/win32.c (CreateChild): revert the usage of + CREATE_NEW_PROCESS_GROUP flag for compatibility. + [ruby-core:43245][Bug #6131] + Sat Apr 7 10:28:40 2012 Aaron Patterson <aaron@tenderlovemaking.com> * ext/psych/lib/psych.rb: bumping up psych version to match release. diff --git a/test/ruby/test_thread.rb b/test/ruby/test_thread.rb index 8a3286871c..8d6a87b705 100644 --- a/test/ruby/test_thread.rb +++ b/test/ruby/test_thread.rb @@ -681,6 +681,7 @@ class TestThreadGroup < Test::Unit::TestCase end def test_thread_timer_and_interrupt + skip 'Process.kill cannot kill a subprocess' if /mswin|mingw/ =~ RUBY_PLATFORM bug5757 = '[ruby-dev:44985]' t0 = Time.now.to_f pid = nil diff --git a/win32/win32.c b/win32/win32.c index 310eb85340..0437b05441 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -1137,7 +1137,7 @@ CreateChild(const WCHAR *cmd, const WCHAR *prog, SECURITY_ATTRIBUTES *psa, aStartupInfo.hStdError = GetStdHandle(STD_ERROR_HANDLE); } - dwCreationFlags = (CREATE_NEW_PROCESS_GROUP | NORMAL_PRIORITY_CLASS); + dwCreationFlags = NORMAL_PRIORITY_CLASS; if (lstrlenW(cmd) > 32767) { child->pid = 0; /* release the slot */ |