diff options
Diffstat (limited to 'tool/file2lastrev.rb')
-rwxr-xr-x | tool/file2lastrev.rb | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/tool/file2lastrev.rb b/tool/file2lastrev.rb index cf15389112..45b2f037ca 100755 --- a/tool/file2lastrev.rb +++ b/tool/file2lastrev.rb @@ -60,7 +60,7 @@ class VCS register(".svn") def self.get_revisions(path) - info_xml = `svn info --xml "#{path}"` + info_xml = IO.popen(["svn", "info", "--xml", path.to_s, :err=>[:child, :out]]) {|f| f.read } _, last, _, changed, _ = info_xml.split(/revision="(\d+)"/) [last, changed] end @@ -114,7 +114,12 @@ begin rescue VCS::NotFoundError => e abort "#{Program.basename}: #{e.message}" unless @suppress_not_found else - last, changed = vcs.get_revisions(ARGV.shift) + begin + last, changed = vcs.get_revisions(ARGV.shift) + rescue => e + abort "#{Program.basename}: #{e.message}" unless @suppress_not_found + exit false + end end case @output |