ruby-changes:11622
From: nobu <ko1@a...>
Date: Wed, 22 Apr 2009 20:24:14 +0900 (JST)
Subject: [ruby-changes:11622] Ruby:r23259 (ruby_1_8): * time.c (time_timeval): check out-of-range.
nobu 2009-04-22 20:24:03 +0900 (Wed, 22 Apr 2009) New Revision: 23259 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=23259 Log: * time.c (time_timeval): check out-of-range. [ruby-core:23282] [Bug #1396] Modified files: branches/ruby_1_8/ChangeLog branches/ruby_1_8/time.c Index: ruby_1_8/time.c =================================================================== --- ruby_1_8/time.c (revision 23258) +++ ruby_1_8/time.c (revision 23259) @@ -200,7 +200,14 @@ if (f != t.tv_sec) { rb_raise(rb_eRangeError, "%f out of Time range", RFLOAT(time)->value); } - t.tv_usec = (time_t)(d*1e6+0.5); + t.tv_usec = (int)(d*1e6+0.5); + if (t.tv_usec >= 1000000) { + t.tv_usec -= 1000000; + if (++t.tv_sec <= 0) { + --t.tv_sec; + t.tv_usec = 999999; + } + } } break; Index: ruby_1_8/ChangeLog =================================================================== --- ruby_1_8/ChangeLog (revision 23258) +++ ruby_1_8/ChangeLog (revision 23259) @@ -1,3 +1,8 @@ +Wed Apr 22 20:24:01 2009 Nobuyoshi Nakada <nobu@r...> + + * time.c (time_timeval): check out-of-range. [ruby-core:23282] + [Bug #1396] + Wed Apr 22 12:20:13 2009 Nobuyoshi Nakada <nobu@r...> * eval.c (proc_invoke): shares dmethod scope local variables. -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/