diff options
author | Shuhei Kagawa <s-kagawa@m3.com> | 2015-03-27 15:41:05 +0900 |
---|---|---|
committer | Shuhei Kagawa <shuhei.kagawa@gmail.com> | 2015-03-28 10:40:58 +0900 |
commit | 1b0526eaac87342b5413183e082b51b10a6ace6e (patch) | |
tree | ae3d341383ed623a7a13b8104596cdba71d58496 /activesupport/lib/active_support/configurable.rb | |
parent | e1b967e7e0edc0f59b49558d2c3d4afd9125a59f (diff) | |
download | rails-1b0526eaac87342b5413183e082b51b10a6ace6e.tar.gz rails-1b0526eaac87342b5413183e082b51b10a6ace6e.tar.bz2 rails-1b0526eaac87342b5413183e082b51b10a6ace6e.zip |
Return super in ActionController::Parameters.const_missing
The current implementation of ActionController::Parameters.const_missing
returns `ActionController::Parameters.always_permitted_parameters` even
if its `super` returns a constant without raising error. This prevents its
subclass in a autoloading module/class from taking advantage of
autoloading constants.
class SomeParameters < ActionController::Parameters
def do_something
DefinedSomewhere.do_something
end
end
In the code above, `DefinedSomewhere` is to be autoloaded with
`Module.const_missing` but `ActionController::Parameters.const_missing`
returns `always_permitted_parameters` instead of the autoloaded
constant.
This pull request fixes the issue respecting `const_missing`'s `super`.
Diffstat (limited to 'activesupport/lib/active_support/configurable.rb')
0 files changed, 0 insertions, 0 deletions