diff options
author | Joshua Peek <josh@joshpeek.com> | 2009-12-16 11:56:51 -0600 |
---|---|---|
committer | Joshua Peek <josh@joshpeek.com> | 2009-12-16 11:56:51 -0600 |
commit | 7ee5843c3cedfe36a680d5b28aa31eef45296c50 (patch) | |
tree | d399cb71b2533ec353ebbb5cc19a0c0902da1987 /railties | |
parent | 1ab35020c152575c84d4ca95842d55be307e1fee (diff) | |
download | rails-7ee5843c3cedfe36a680d5b28aa31eef45296c50.tar.gz rails-7ee5843c3cedfe36a680d5b28aa31eef45296c50.tar.bz2 rails-7ee5843c3cedfe36a680d5b28aa31eef45296c50.zip |
Fully expand relative rails framework paths and make sure we aren't
adding any to the load path more than once.
Diffstat (limited to 'railties')
-rwxr-xr-x | railties/bin/rails | 7 | ||||
-rw-r--r-- | railties/lib/rails/generators.rb | 5 |
2 files changed, 7 insertions, 5 deletions
diff --git a/railties/bin/rails b/railties/bin/rails index 808df97429..0f51d5739f 100755 --- a/railties/bin/rails +++ b/railties/bin/rails @@ -4,9 +4,10 @@ rescue LoadError # If people are not using gems, the load path must still # be correct. # TODO: Remove the begin / rescue block somehow - $:.unshift File.dirname(__FILE__) + '/../lib' - $:.unshift File.dirname(__FILE__) + '/../../activesupport/lib' - retry + $:.unshift File.expand_path('../../lib', __FILE__) + $:.unshift File.expand_path('../../../activesupport/lib', __FILE__) + $:.unshift File.expand_path('../../../actionpack/lib', __FILE__) + require 'rails/ruby_version_check' end Signal.trap("INT") { puts; exit } diff --git a/railties/lib/rails/generators.rb b/railties/lib/rails/generators.rb index ffb9cfe1cd..0e66c9f58f 100644 --- a/railties/lib/rails/generators.rb +++ b/railties/lib/rails/generators.rb @@ -1,5 +1,6 @@ -activesupport_path = "#{File.dirname(__FILE__)}/../../../activesupport/lib" -$LOAD_PATH.unshift(activesupport_path) if File.directory?(activesupport_path) +activesupport_path = File.expand_path('../../../../activesupport/lib', __FILE__) +$:.unshift(activesupport_path) if File.directory?(activesupport_path) && !$:.include?(activesupport_path) + require 'active_support' require 'active_support/core_ext/object/blank' require 'active_support/core_ext/object/metaclass' |