* signal.c (sighandler): call handler immediately only for default

handlers.  [ruby-dev:25003]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@7429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 2004-11-30 17:28:17 +00:00
Родитель 6f1b13de99
Коммит 1b4f379ba3
3 изменённых файлов: 7 добавлений и 2 удалений

Просмотреть файл

@ -1,3 +1,8 @@
Wed Dec 1 02:21:02 2004 Yukihiro Matsumoto <matz@ruby-lang.org>
* signal.c (sighandler): call handler immediately only for default
handlers. [ruby-dev:25003]
Tue Nov 30 23:49:12 2004 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (pipe_open): errno should be preserved for rb_sys_fail() when

2
eval.c
Просмотреть файл

@ -9959,7 +9959,7 @@ static int
rb_thread_switch(n)
int n;
{
rb_trap_immediate = (curr_thread->flags&0x100)?1:0;
rb_trap_immediate = (curr_thread->flags&(1<<8))?1:0;
switch (n) {
case 0:
return 0;

Просмотреть файл

@ -417,7 +417,7 @@ sighandler(sig)
ruby_signal(sig, sighandler);
#endif
if (ATOMIC_TEST(rb_trap_immediate)) {
if (trap_list[sig].cmd == 0 && ATOMIC_TEST(rb_trap_immediate)) {
IN_MAIN_CONTEXT(signal_exec, sig);
ATOMIC_SET(rb_trap_immediate, 1);
}