summaryrefslogtreecommitdiffstats
path: root/signal.c
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-06-12 16:56:06 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-06-12 16:56:06 +0000
commit167553dd4af4605b228c3b061a29c7be920db683 (patch)
tree356b9a30124e0d1344837717aba71d50ed4b49f3 /signal.c
parentdab5357c7cbe9346446db738aeb89c50c9ee7ae7 (diff)
downloadruby-167553dd4af4605b228c3b061a29c7be920db683.tar.gz
ruby-167553dd4af4605b228c3b061a29c7be920db683.tar.xz
ruby-167553dd4af4605b228c3b061a29c7be920db683.zip
* signal.c (sigexit): call rb_thread_signal_exit() instead of
rb_exit(). [ruby-dev:26347] * eval.c (rb_thread_signal_exit): a new function to exit on main thread. * eval.c (rb_thread_switch): exit status should be retrieved from ruby_errinfo. * eval.c (rb_f_exit): ensure exit(0) should call exit(EXIT_SUCCESS). * missing/mkdir.c: remove. [ruby-core:05177] * hash.c (env_aset): do not treat nil as key-removing value. [ruby-list:40865] * parse.y (method_call): allow aref expression ([]) to take a block. * parse.y (block_dup_check): a function to check duplication of a block argument and an actual block. * lib/delegate.rb (SimpleDelegator::__setobj__): need check for recursive delegation. [ruby-core:04940] * lib/cgi.rb: add underscore aliases CGI::escape_html, CGI::unescape_html, CGI::escape_element, CGI::unescape_element. [ruby-core:05058] * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@8613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'signal.c')
-rw-r--r--signal.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/signal.c b/signal.c
index 844adfc68..3cb49cc0f 100644
--- a/signal.c
+++ b/signal.c
@@ -33,6 +33,7 @@ static struct signals {
char *signm;
int signo;
} siglist [] = {
+ {"EXIT", 0},
#ifdef SIGHUP
{"HUP", SIGHUP},
#endif
@@ -592,7 +593,7 @@ sigexit(sig)
}
#endif
- rb_exit(0);
+ rb_thread_signal_exit();
}
static VALUE