From 354a27caf72abf04b9d7513b806e0445b4629b0f Mon Sep 17 00:00:00 2001 From: Andreas Gerauer Date: Sun, 5 Apr 2009 23:08:03 +0200 Subject: [PATCH] verify will not access session unless needed (incl. test) --- actionpack/lib/action_controller/test_process.rb | 1 + actionpack/lib/action_controller/verification.rb | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/actionpack/lib/action_controller/test_process.rb b/actionpack/lib/action_controller/test_process.rb index b2d1341..737820c 100644 --- a/actionpack/lib/action_controller/test_process.rb +++ b/actionpack/lib/action_controller/test_process.rb @@ -304,6 +304,7 @@ module ActionController #:nodoc: end def [](key) + raise if key.nil? super(key.to_s) end diff --git a/actionpack/lib/action_controller/verification.rb b/actionpack/lib/action_controller/verification.rb index c62b81b..042236d 100644 --- a/actionpack/lib/action_controller/verification.rb +++ b/actionpack/lib/action_controller/verification.rb @@ -102,9 +102,9 @@ module ActionController #:nodoc: end def verify_presence_of_keys_in_hash_flash_or_params(options) # :nodoc: - [*options[:params] ].find { |v| params[v].nil? } || - [*options[:session]].find { |v| session[v].nil? } || - [*options[:flash] ].find { |v| flash[v].nil? } + options[:params] && [*options[:params] ].find { |v| params[v].nil? } || + options[:session] && [*options[:session]].find { |v| session[v].nil? } || + options[:flash] && [*options[:flash] ].find { |v| flash[v].nil? } end def verify_method(options) # :nodoc: -- 1.6.2