From 3b13a09e89f4edaf07e77fea6b0fd529485c1ead Mon Sep 17 00:00:00 2001 From: Jeremy Kemper Date: Mon, 7 Jan 2008 00:12:43 +0000 Subject: Filter procs must take 1 or 2 arguments. Raise ArgumentError otherwise. git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8583 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_controller/filters.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'actionpack/lib/action_controller') diff --git a/actionpack/lib/action_controller/filters.rb b/actionpack/lib/action_controller/filters.rb index d7fb276171..337c489f07 100644 --- a/actionpack/lib/action_controller/filters.rb +++ b/actionpack/lib/action_controller/filters.rb @@ -583,10 +583,12 @@ module ActionController #:nodoc: when filter.respond_to?(:call) if filter.is_a?(Method) MethodFilter - elsif filter.arity == 1 - ProcFilter else - ProcWithCallFilter + case filter.arity + when 1; ProcFilter + when 2; ProcWithCallFilter + else raise ArgumentError, 'Filter blocks must take one or two arguments.' + end end when filter.respond_to?(:filter) ClassFilter -- cgit v1.2.3