diff options
author | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-02 16:21:26 +0000 |
---|---|---|
committer | matz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-01-02 16:21:26 +0000 |
commit | 59dbfa3e4cc8d4705ef5a4abd9904fa523f26bfa (patch) | |
tree | dceea3234a395183be7e17858fbbf80ef291e984 /eval.c | |
parent | 88c127c19be3d12bc5edcb6ceb416985258396c6 (diff) | |
download | ruby-59dbfa3e4cc8d4705ef5a4abd9904fa523f26bfa.tar.gz |
* dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
[ruby-dev:22476]
* io.c (argf_eof): ARGF.eof? should not have any side effect.
[ruby-dev:22469]
* io.c (argf_each_byte): should return self. [ruby-dev:22465]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5365 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'eval.c')
-rw-r--r-- | eval.c | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -10318,13 +10318,16 @@ rb_thread_wait_for(time) curr_thread == curr_thread->next || curr_thread->status == THREAD_TO_KILL) { int n; + int thr_critical = rb_thread_critical; #ifndef linux double d, limit; limit = timeofday()+(double)time.tv_sec+(double)time.tv_usec*1e-6; #endif for (;;) { + rb_thread_critical = Qtrue; TRAP_BEG; n = select(0, 0, 0, 0, &time); + rb_thread_critical = thr_critical; TRAP_END; if (n == 0) return; if (n < 0) { |