diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rwxr-xr-x | tool/file2lastrev.rb | 9 |
2 files changed, 12 insertions, 2 deletions
@@ -1,3 +1,8 @@ +Thu Apr 15 20:41:10 2010 Tanaka Akira <akr@fsij.org> + + * tool/file2lastrev.rb: make -q effective for files not version + controlled. + Thu Apr 15 14:50:19 2010 Nobuyoshi Nakada <nobu@ruby-lang.org> * vm.c (vm_backtrace_each): get rid of use of malloc from signal 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 |