From: matz@... (Yukihiro Matsumoto) Date: 2004-01-02T01:29:04+09:00 Subject: Re: sleep is broken with --enable-pthread [Was: Bad interaction between timeout.rb and --enable-pthread] Hi, In message "Re: sleep is broken with --enable-pthread [Was: Bad interaction between timeout.rb and --enable-pthread]" on 04/01/02, Yukihiro Matsumoto writes: |Nathaniel, can you try this? I left small typo in the patch. Try this one instead. --- configure.in 27 Dec 2003 14:42:41 -0000 1.215 +++ configure.in 1 Jan 2004 16:24:24 -0000 @@ -709,3 +709,3 @@ if test x"$enable_pthread" = xyes; then fi - AC_CHECK_FUNC(nanosleep) + AC_CHECK_FUNCS(nanosleep) if test x"$ac_cv_func_nanosleep" = xno; then --- eval.c 30 Dec 2003 16:36:05 -0000 1.622 +++ eval.c 1 Jan 2004 16:24:58 -0000 @@ -10315,2 +10315,3 @@ rb_thread_wait_for(time) int n; + int thr_critical = rb_thread_critical; #ifndef linux @@ -10320,4 +10321,6 @@ rb_thread_wait_for(time) for (;;) { + rb_thread_critical = Qtrue; TRAP_BEG; n = select(0, 0, 0, 0, &time); + rb_thread_critical = thr_critical; TRAP_END;