diff options
Diffstat (limited to 'activesupport')
-rw-r--r-- | activesupport/CHANGELOG | 2 | ||||
-rw-r--r-- | activesupport/lib/active_support/core_ext/object/extending.rb | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 9852e4a5fb..dbe6aa91c2 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Remove a hack intended to avoid unloading the same class twice, but which would not work anyways. [Nicholas Seckar] + * Update Object.subclasses_of to locate nested classes. This affects Object.remove_subclasses_of in that nested classes will now be unloaded. [Nicholas Seckar] * Update Object.remove_subclasses_of to use Class.remove_class, reducing duplication. [Nicholas Seckar] diff --git a/activesupport/lib/active_support/core_ext/object/extending.rb b/activesupport/lib/active_support/core_ext/object/extending.rb index 16f62d85b7..e15b4bf385 100644 --- a/activesupport/lib/active_support/core_ext/object/extending.rb +++ b/activesupport/lib/active_support/core_ext/object/extending.rb @@ -9,7 +9,6 @@ class Object #:nodoc: next if # Exclude this class if (k.ancestors & superclasses).empty? || # It's not a subclass of our supers superclasses.include?(k) || # It *is* one of the supers - subclasses.include?(k) || # We already have it for some obscure reason eval("! defined?(::#{k})") || # It's not defined. eval("::#{k}").object_id != k.object_id subclasses << k |