def system(*args)
cmd = args.join(' ')
result = nil
if RUBY_PLATFORM =~ /win32/
cmd = cmd.split(/\s+/).collect {|w| w.match(/^[\w+]+:\/\//) ? w : w.gsub('/', '\\') }.join(' ')
cmd.gsub!(/^cd /,'cd /D ')
cmd.gsub!(/&& cd /,'&& cd /D ')
logger.trace "executing locally: #{cmd}"
elapsed = Benchmark.realtime do
result = super(cmd)
end
else
logger.trace "executing locally: #{cmd}"
elapsed = Benchmark.realtime do
result = super
end
end
logger.trace "command finished in #{(elapsed * 1000).round}ms"
result
end