]> source.dussan.org Git - redmine.git/commitdiff
scm: mercurial: refactor "cat" by using hg helper method (#4455).
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 16 Feb 2011 03:47:05 +0000 (03:47 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Wed, 16 Feb 2011 03:47:05 +0000 (03:47 +0000)
Contributed by Yuya Nishihara.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4842 e93f8b46-1217-0410-a6f0-8f06a7374b81

lib/redmine/scm/adapters/mercurial_adapter.rb

index 04680f1043da8fadde7dab9831f2e027ea1978de..4aa3024d38512727b142f0ee026fb4061c5cbcf5 100644 (file)
@@ -192,16 +192,12 @@ module Redmine
         end
 
         def cat(path, identifier=nil)
-          cmd = "#{self.class.sq_bin} -R #{target('')} cat"
-          cmd << " -r #{hgrev(identifier, true)}"
-          cmd << " #{target(path)}"
-          cat = nil
-          shellout(cmd) do |io|
+          hg 'cat', '-r', hgrev(identifier), hgtarget(path) do |io|
             io.binmode
-            cat = io.read
+            io.read
           end
-          return nil if $? && $?.exitstatus != 0
-          cat
+        rescue HgCommandAborted
+          nil  # means not found
         end
 
         def annotate(path, identifier=nil)