aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support/duration.rb
diff options
context:
space:
mode:
Diffstat (limited to 'activesupport/lib/active_support/duration.rb')
-rw-r--r--activesupport/lib/active_support/duration.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/duration.rb b/activesupport/lib/active_support/duration.rb
index c1f0e4bf81..887a40d35e 100644
--- a/activesupport/lib/active_support/duration.rb
+++ b/activesupport/lib/active_support/duration.rb
@@ -36,7 +36,7 @@ module ActiveSupport
end
def is_a?(klass) #:nodoc:
- klass == Duration || super
+ Duration == klass || value.is_a?(klass)
end
# Returns true if <tt>other</tt> is also a Duration instance with the
@@ -50,7 +50,9 @@ module ActiveSupport
end
def self.===(other) #:nodoc:
- other.is_a?(Duration) rescue super
+ other.is_a?(Duration)
+ rescue NoMethodError
+ false
end
# Calculates a new Time or Date that is as far in the future