From 5d8f69503299ef719c5523546cf2745de136cea9 Mon Sep 17 00:00:00 2001 From: tadf Date: Mon, 22 Mar 2010 10:32:10 +0000 Subject: * lib/date.rb (Date#>>): fixed. [ruby-core:28011] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 4 ++++ lib/date.rb | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index f2bce5ce6b..d9baf8564d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Mon Mar 22 19:31:06 2010 Tadayoshi Funaba + + * lib/date.rb (Date#>>): fixed. [ruby-core:28011] + Mon Mar 22 18:01:13 2010 Nobuyoshi Nakada * configure.in (RMDIRS): use rmdir -p if possible. diff --git a/lib/date.rb b/lib/date.rb index daa51d8e0e..3bb0875023 100644 --- a/lib/date.rb +++ b/lib/date.rb @@ -1,7 +1,7 @@ # # date.rb - date and time library # -# Author: Tadayoshi Funaba 1998-2009 +# Author: Tadayoshi Funaba 1998-2010 # # Documentation: William Webber # @@ -1416,7 +1416,10 @@ class Date y, m = (year * 12 + (mon - 1) + n).divmod(12) m, = (m + 1) .divmod(1) d = mday - d -= 1 until jd2 = _valid_civil?(y, m, d, @sg) + until jd2 = _valid_civil?(y, m, d, @sg) + d -= 1 + raise ArgumentError, 'invalid date' unless d > 0 + end self + (jd2 - jd) end -- cgit v1.2.3