aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib
diff options
context:
space:
mode:
authorJeremy Kemper <jeremy@bitsweat.net>2008-11-10 21:39:05 -0800
committerJeremy Kemper <jeremy@bitsweat.net>2008-11-10 22:21:09 -0800
commitcbb38bbdba0f7cfb628a0f8716e79d0d079fd7bf (patch)
treeafcd4f67716bd3ada46cd66026590ca57c25321b /activesupport/lib
parent278b6cd9529f33286449a9be18f1903687814d3f (diff)
downloadrails-cbb38bbdba0f7cfb628a0f8716e79d0d079fd7bf.tar.gz
rails-cbb38bbdba0f7cfb628a0f8716e79d0d079fd7bf.tar.bz2
rails-cbb38bbdba0f7cfb628a0f8716e79d0d079fd7bf.zip
Only track new constant definitions when we're reloading dependencies
Diffstat (limited to 'activesupport/lib')
-rw-r--r--activesupport/lib/active_support/dependencies.rb12
1 files changed, 10 insertions, 2 deletions
diff --git a/activesupport/lib/active_support/dependencies.rb b/activesupport/lib/active_support/dependencies.rb
index 3d871eec11..fe568d6127 100644
--- a/activesupport/lib/active_support/dependencies.rb
+++ b/activesupport/lib/active_support/dependencies.rb
@@ -138,14 +138,22 @@ module ActiveSupport #:nodoc:
end
def load_with_new_constant_marking(file, *extras) #:nodoc:
- Dependencies.new_constants_in(Object) { load_without_new_constant_marking(file, *extras) }
+ if Dependencies.load?
+ Dependencies.new_constants_in(Object) { load_without_new_constant_marking(file, *extras) }
+ else
+ load_without_new_constant_marking(file, *extras)
+ end
rescue Exception => exception # errors from loading file
exception.blame_file! file
raise
end
def require(file, *extras) #:nodoc:
- Dependencies.new_constants_in(Object) { super }
+ if Dependencies.load?
+ Dependencies.new_constants_in(Object) { super }
+ else
+ super
+ end
rescue Exception => exception # errors from required file
exception.blame_file! file
raise