From 071af66e9ede4057bf1d3e3d248b3949d74bc9c5 Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Sun, 6 Dec 2009 18:03:18 -0800 Subject: Ruby 1.9.2: explicitly raise NoMethodError for explicit coercion attempts. Calling super gives us NameErrors. --- activesupport/lib/active_support/whiny_nil.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/activesupport/lib/active_support/whiny_nil.rb b/activesupport/lib/active_support/whiny_nil.rb index c4aaba7ab3..c3ed659d6b 100644 --- a/activesupport/lib/active_support/whiny_nil.rb +++ b/activesupport/lib/active_support/whiny_nil.rb @@ -45,7 +45,7 @@ class NilClass def method_missing(method, *args, &block) # Ruby 1.9.2: disallow explicit coercion via method_missing. if method == :to_ary || method == :to_str - super + raise NoMethodError, "undefined method `#{method}' for nil:NilClass" elsif klass = METHOD_CLASS_MAP[method] raise_nil_warning_for klass, method, caller else -- cgit v1.2.3