diff --git a/ChangeLog b/ChangeLog index 0f58a8658f..348826991a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Jan 5 12:31:23 2007 GOTOU Yuuzou + + * thread_pthread.ci (native_sleep): fix tv_nsec overflow. + Thu Jan 4 20:01:29 2007 Koichi Sasada * common.mk : rename yarv-test-[all/each] to compare-test[/-each]. diff --git a/thread_pthread.ci b/thread_pthread.ci index df1ed7e5d4..3a3249e531 100644 --- a/thread_pthread.ci +++ b/thread_pthread.ci @@ -254,6 +254,10 @@ native_sleep(yarv_thread_t *th, struct timeval *tv) gettimeofday(&tvn, NULL); ts.tv_sec = tvn.tv_sec + tv->tv_sec; ts.tv_nsec = (tvn.tv_usec + tv->tv_usec) * 1000; + if (ts.tv_nsec >= 1000000000){ + ts.tv_sec += 1; + ts.tv_nsec -= 1000000000; + } } th->status = THREAD_STOPPED;