diff options
Diffstat (limited to 'activesupport/lib')
-rw-r--r-- | activesupport/lib/active_support/core_ext/date_time/calculations.rb | 2 | ||||
-rw-r--r-- | activesupport/lib/active_support/duration.rb | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/core_ext/date_time/calculations.rb b/activesupport/lib/active_support/core_ext/date_time/calculations.rb index dd30dd07bc..3e62891fcf 100644 --- a/activesupport/lib/active_support/core_ext/date_time/calculations.rb +++ b/activesupport/lib/active_support/core_ext/date_time/calculations.rb @@ -45,7 +45,7 @@ module ActiveSupport #:nodoc: # Returns a new DateTime representing the time a number of seconds since the instance time # Do not use this method in combination with x.months, use months_since instead! def since(seconds) - self + Rational(seconds, 86400) + self + Rational(seconds.round, 86400) end alias :in :since diff --git a/activesupport/lib/active_support/duration.rb b/activesupport/lib/active_support/duration.rb index 5279c4435a..721bc18795 100644 --- a/activesupport/lib/active_support/duration.rb +++ b/activesupport/lib/active_support/duration.rb @@ -67,7 +67,7 @@ module ActiveSupport parts.inject(time) do |t,(type,number)| if t.acts_like?(:time) if type == :seconds - t + (sign * number) + t.since(sign * number) else t.advance(type => sign * number) end |