Index: eval_intern.h =================================================================== --- eval_intern.h (revision 29738) +++ eval_intern.h (working copy) @@ -210,7 +210,6 @@ void rb_thread_terminate_all(void); VALUE rb_vm_top_self(); VALUE rb_vm_cbase(void); -void rb_trap_restore_mask(void); #ifndef CharNext /* defined as CharNext[AW] on Windows. */ #define CharNext(p) ((p) + mblen(p, RUBY_MBCHAR_MAXSIZE)) Index: vm_eval.c =================================================================== --- vm_eval.c (revision 29738) +++ vm_eval.c (working copy) @@ -1439,7 +1439,6 @@ VALUE desc = rb_inspect(tag); rb_raise(rb_eArgError, "uncaught throw %s", RSTRING_PTR(desc)); } - rb_trap_restore_mask(); th->errinfo = NEW_THROW_OBJECT(tag, 0, TAG_THROW); JUMP_TAG(TAG_THROW); Index: eval.c =================================================================== --- eval.c (revision 29738) +++ eval.c (working copy) @@ -438,8 +438,6 @@ JUMP_TAG(TAG_FATAL); } - rb_trap_restore_mask(); - if (tag != TAG_FATAL) { EXEC_EVENT_HOOK(th, RUBY_EVENT_RAISE, th->cfp->self, 0, 0); } Index: signal.c =================================================================== --- signal.c (revision 29738) +++ signal.c (working copy) @@ -538,14 +538,6 @@ return signal_buff.size; } -#if USE_TRAP_MASK -# ifdef HAVE_SIGPROCMASK -static sigset_t trap_last_mask; -# else -static int trap_last_mask; -# endif -#endif - #if HAVE_PTHREAD_H #include #endif @@ -880,13 +872,6 @@ vm->trap_list[sig].cmd = command; vm->trap_list[sig].safe = rb_safe_level(); /* enable at least specified signal. */ -#if USE_TRAP_MASK -#ifdef HAVE_SIGPROCMASK - sigdelset(&arg->mask, sig); -#else - arg->mask &= ~sigmask(sig); -#endif -#endif return oldcmd; } @@ -896,19 +881,10 @@ { /* enable interrupt */ pthread_sigmask(SIG_SETMASK, &arg->mask, NULL); - trap_last_mask = arg->mask; return 0; } #endif -void -rb_trap_restore_mask(void) -{ -#if USE_TRAP_MASK - pthread_sigmask(SIG_SETMASK, &trap_last_mask, NULL); -#endif -} - /* * call-seq: * Signal.trap( signal, command ) -> obj @@ -1031,12 +1007,6 @@ } else { GET_VM()->trap_list[sig].cmd = 0; } - -#if USE_TRAP_MASK - sigdelset(&mask, sig); - pthread_sigmask(SIG_SETMASK, &mask, NULL); - trap_last_mask = mask; -#endif } #endif