diff options
author | Kamal Fariz Mahyuddin <kamal.fariz@gmail.com> | 2009-08-10 14:12:26 +0800 |
---|---|---|
committer | Jeremy Kemper <jeremy@bitsweat.net> | 2009-08-10 00:04:37 -0700 |
commit | 600a89f2082beadf4af9fe140a1a2ae56386cd49 (patch) | |
tree | 99b754184b108266aaa793a51a01a8ac355a6830 /railties/lib | |
parent | 8c32248acbd71f7906a037fad499e2f8cae61bed (diff) | |
download | rails-600a89f2082beadf4af9fe140a1a2ae56386cd49.tar.gz rails-600a89f2082beadf4af9fe140a1a2ae56386cd49.tar.bz2 rails-600a89f2082beadf4af9fe140a1a2ae56386cd49.zip |
find_cmd should return the full path of the db command
[#1488 state:committed]
Signed-off-by: Jeremy Kemper <jeremy@bitsweat.net>
Diffstat (limited to 'railties/lib')
-rw-r--r-- | railties/lib/commands/dbconsole.rb | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/railties/lib/commands/dbconsole.rb b/railties/lib/commands/dbconsole.rb index 8002264f7e..e6f11a45db 100644 --- a/railties/lib/commands/dbconsole.rb +++ b/railties/lib/commands/dbconsole.rb @@ -33,11 +33,15 @@ end def find_cmd(*commands) dirs_on_path = ENV['PATH'].to_s.split(File::PATH_SEPARATOR) commands += commands.map{|cmd| "#{cmd}.exe"} if RUBY_PLATFORM =~ /win32/ - commands.detect do |cmd| - dirs_on_path.detect do |path| - File.executable? File.join(path, cmd) + + full_path_command = nil + found = commands.detect do |cmd| + dir = dirs_on_path.detect do |path| + full_path_command = File.join(path, cmd) + File.executable? full_path_command end - end || abort("Couldn't find database client: #{commands.join(', ')}. Check your $PATH and try again.") + end + found ? full_path_command : abort("Couldn't find database client: #{commands.join(', ')}. Check your $PATH and try again.") end case config["adapter"] |