summaryrefslogtreecommitdiff
path: root/test/ruby
diff options
context:
space:
mode:
authorko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-12 04:52:25 +0000
committerko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-06-12 04:52:25 +0000
commit6c3f1461cd8052486f8e124f8f899447f653505b (patch)
treef302d31ad61acb16aece3788f803559c771e3348 /test/ruby
parenta57d295e36980fe7667f5557c4741339d7684fdc (diff)
remove ruby_kill() introduced for [Bug #7951].
* thread.c (rbuy_kill): removed. This function is used with SIGSEGV, SIGBUS, SIGKILL, SIGILL, SIGFPE and SIGSTOP and these signals are affect immediately. So that `kill(2)' is enough for them. * signal.c (rb_f_kill): ditto. * vm_core.h (rb_thread_t::interrupt_cond): removed because only `ruby_kill()' uses this field. * test/ruby/test_signal.rb: Without this patch sending SIGSTOP to own process wait another interrupt even if another process sends SIGCONT. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r--test/ruby/test_signal.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/test/ruby/test_signal.rb b/test/ruby/test_signal.rb
index c48a4ad400..2d98b0b564 100644
--- a/test/ruby/test_signal.rb
+++ b/test/ruby/test_signal.rb
@@ -307,4 +307,18 @@ EOS
b = Signal.list.keys.map(&:object_id).sort
assert_equal a, b
end
+
+ def test_self_stop
+ assert_ruby_status([], <<-'end;')
+ begin
+ fork{
+ sleep 1
+ Process.kill(:CONT, Process.ppid)
+ }
+ Process.kill(:STOP, Process.pid)
+ rescue NotImplementedError
+ # ok
+ end
+ end;
+ end
end