Commit aaf30ca9b0076421c291172cb250c9e43c649f95

Minor fix in ActiveRecord::Authorization, following Santilin request
  
6767 agent = options[:to] || Anyone.current
6868
6969 if authorization_cache[agent][permission].nil?
70 authorization_cache[agent][permission] =
71 authorization_methods_eval(agent, permission)
70 authorization_eval = authorization_methods_eval(agent, permission)
71 # Deny by default
72 authorization_eval = false if authorization_eval.nil?
73 # Cache the evalutation for better performance
74 authorization_cache[agent][permission] = authorization_eval
7275 else
7376 authorization_cache[agent][permission]
7477 end
8686 authorize?(permission, options)
8787 end
8888
89 private
90
8991 # Authorization Cache
90 def authorization_cache
92 def authorization_cache #:nodoc:
9193 @authorization_cache ||= Hash.new{ |agent, permission| agent[permission] = Hash.new }
9294 end
9395
94 private
95
9696 def authorization_methods_eval(agent, permission) #:nodoc:
9797 self.class.authorization_methods.each do |m|
9898 auth_method_eval =
108108 return auth_method_eval unless auth_method_eval.nil?
109109 end
110110
111 false
111 nil
112112 end
113113 end
114114 end