|
|
@@ -1004,36 +1004,23 @@ function! s:update_ruby()
|
|
|
%["#{arg.gsub('"', '\"')}"]
|
|
|
end
|
|
|
|
|
|
- require 'rubygems'
|
|
|
- require 'thread'
|
|
|
- require 'fileutils'
|
|
|
- require 'timeout'
|
|
|
-
|
|
|
- if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new('1.9')
|
|
|
- def popen cmd
|
|
|
- IO.popen(cmd, :pgroup => true)
|
|
|
- end
|
|
|
- def killall pid
|
|
|
- Process.kill 'TERM', - pid rescue nil
|
|
|
- end
|
|
|
- else
|
|
|
- def popen cmd
|
|
|
- IO.popen(cmd)
|
|
|
- end
|
|
|
- def killall pid
|
|
|
- pids = [pid]
|
|
|
- unless `which pgrep 2> /dev/null`.empty?
|
|
|
- children = pids
|
|
|
- until children.empty?
|
|
|
- children = children.map { |pid|
|
|
|
- `pgrep -P #{pid}`.lines.map { |l| l.chomp }
|
|
|
- }.flatten
|
|
|
- pids += children
|
|
|
- end
|
|
|
+ def killall pid
|
|
|
+ pids = [pid]
|
|
|
+ unless `which pgrep 2> /dev/null`.empty?
|
|
|
+ children = pids
|
|
|
+ until children.empty?
|
|
|
+ children = children.map { |pid|
|
|
|
+ `pgrep -P #{pid}`.lines.map { |l| l.chomp }
|
|
|
+ }.flatten
|
|
|
+ pids += children
|
|
|
end
|
|
|
- pids.each { |pid| Process.kill 'TERM', pid.to_i rescue nil }
|
|
|
end
|
|
|
+ pids.each { |pid| Process.kill 'TERM', pid.to_i rescue nil }
|
|
|
end
|
|
|
+
|
|
|
+ require 'thread'
|
|
|
+ require 'fileutils'
|
|
|
+ require 'timeout'
|
|
|
running = true
|
|
|
iswin = VIM::evaluate('s:is_win').to_i == 1
|
|
|
pull = VIM::evaluate('s:update.pull').to_i == 1
|
|
|
@@ -1100,7 +1087,7 @@ function! s:update_ruby()
|
|
|
File.unlink tmp rescue nil
|
|
|
end
|
|
|
else
|
|
|
- fd = popen(cmd).extend(PlugStream)
|
|
|
+ fd = IO.popen(cmd).extend(PlugStream)
|
|
|
first_line = true
|
|
|
log_prob = 1.0 / nthr
|
|
|
while line = Timeout::timeout(timeout) { fd.get_line }
|