diff options
author | kosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-03-19 04:40:22 +0000 |
---|---|---|
committer | kosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2013-03-19 04:40:22 +0000 |
commit | 4ea96ece8400f1c6caa8a2429f6d93f15434238f (patch) | |
tree | 577fa0eb2d207dca593a9a0e8316dde7fa15ecfb /vm_core.h | |
parent | b945ad289f14c1b1ba65bdd9a4e1106f3cee134c (diff) | |
download | ruby-4ea96ece8400f1c6caa8a2429f6d93f15434238f.tar.gz |
* internal.h: added a declaration of ruby_kill().
* thread.c (ruby_kill): helper function of kill().
* signal.c (rb_f_kill): use ruby_kill() instead of kill().
* signal.c (rb_f_kill): call rb_thread_execute_interrupts()
to ensure that make SignalException if sent a signal
to myself. [Bug #7951] [ruby-core:52864]
* vm_core.h (typedef struct rb_thread_struct): added
th->interrupt_cond.
* thread.c (rb_threadptr_interrupt_common): added to
initialization of th->interrupt_cond.
* thread.c (thread_create_core): ditto.
* test/ruby/test_signal.rb (TestSignal#test_hup_me): test for
the above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'vm_core.h')
-rw-r--r-- | vm_core.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -551,6 +551,7 @@ typedef struct rb_thread_struct { rb_atomic_t interrupt_flag; unsigned long interrupt_mask; rb_thread_lock_t interrupt_lock; + rb_thread_cond_t interrupt_cond; struct rb_unblock_callback unblock; VALUE locking_mutex; struct rb_mutex_struct *keeping_mutexes; |