aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
authorAaron Patterson <aaron.patterson@gmail.com>2013-03-14 18:40:09 -0700
committerAaron Patterson <aaron.patterson@gmail.com>2013-03-14 18:40:09 -0700
commitfef210474c3a4f6adbbfda48d705a0d387ddac52 (patch)
tree206dce3ba5df01ab4cc7b25d4fb6c67e82d70862 /activerecord/lib
parentd7587943711e96e0335c40452d77869a479c1722 (diff)
downloadrails-fef210474c3a4f6adbbfda48d705a0d387ddac52.tar.gz
rails-fef210474c3a4f6adbbfda48d705a0d387ddac52.tar.bz2
rails-fef210474c3a4f6adbbfda48d705a0d387ddac52.zip
dup and set the default proc to nil rather than looping through everything
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/connection_adapters/schema_cache.rb4
1 files changed, 3 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/schema_cache.rb b/activerecord/lib/active_record/connection_adapters/schema_cache.rb
index 5839d1d3b4..dd6363cd2a 100644
--- a/activerecord/lib/active_record/connection_adapters/schema_cache.rb
+++ b/activerecord/lib/active_record/connection_adapters/schema_cache.rb
@@ -70,7 +70,9 @@ module ActiveRecord
# if we get current version during initialization, it happens stack over flow.
@version = ActiveRecord::Migrator.current_version
[@version] + [:@columns, :@columns_hash, :@primary_keys, :@tables].map do |val|
- self.instance_variable_get(val).inject({}) { |h, v| h[v[0]] = v[1]; h }
+ instance_variable_get(val).dup.tap { |h|
+ h.default_proc = nil
+ }
end
end