diff options
author | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-01-21 16:15:13 +0000 |
---|---|---|
committer | nagachika <nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-01-21 16:15:13 +0000 |
commit | bdfd5fd1ab5895efcf933e45af8ef1815ad54a13 (patch) | |
tree | 669035fdb8317ce008aed74b61e5818078bb3500 /signal.c | |
parent | 4b0a168d7b82d7b9e50f61fe8d7a336dc8d84316 (diff) |
merge revision(s) r48884,r48885: [Backport #10615]
* signal.c (ruby_signal): since SIGKILL is not supported by MSVCRT,
should be treated before calling signal(3).
[Bug #10615]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@49370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'signal.c')
-rw-r--r-- | signal.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -601,6 +601,17 @@ posix_signal(int signum, sighandler_t handler) return ruby_signal(signum, handler); } +#elif defined _WIN32 +static inline sighandler_t +ruby_signal(int signum, sighandler_t handler) +{ + if (signum == SIGKILL) { + errno = EINVAL; + return SIG_ERR; + } + return signal(signum, handler); +} + #else /* !POSIX_SIGNAL */ #define ruby_signal(sig,handler) (/* rb_trap_accept_nativethreads[(sig)] = 0,*/ signal((sig),(handler))) #if 0 /* def HAVE_NATIVETHREAD */ |