From: Toshi MARUYAMA Date: Tue, 8 Mar 2011 05:17:43 +0000 (+0000) Subject: scm: git: support path encoding in adapter cat (#5251). X-Git-Tag: 1.2.0~800 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=7e6a5ec7ab215347553ed4ffbc4fee91bc5b74ff;p=redmine.git scm: git: support path encoding in adapter cat (#5251). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5042 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/lib/redmine/scm/adapters/git_adapter.rb b/lib/redmine/scm/adapters/git_adapter.rb index 69077eadc..b1db687e1 100644 --- a/lib/redmine/scm/adapters/git_adapter.rb +++ b/lib/redmine/scm/adapters/git_adapter.rb @@ -309,14 +309,16 @@ module Redmine if identifier.nil? identifier = 'HEAD' end - cmd = "#{self.class.sq_bin} --git-dir #{target('')} show --no-color #{shell_quote(identifier + ':' + path)}" + cmd_args = %w|show --no-color| + cmd_args << "#{identifier}:#{scm_iconv(@path_encoding, 'UTF-8', path)}" cat = nil - shellout(cmd) do |io| + scm_cmd(*cmd_args) do |io| io.binmode cat = io.read end - return nil if $? && $?.exitstatus != 0 cat + rescue ScmCommandAborted + nil end class Revision < Redmine::Scm::Adapters::Revision