Project

General

Profile

Patch #26149 » 0001-removes-duplicate-shell_quote-method.patch

Jens Krämer, 2017-06-13 08:36

View differences:

lib/redmine/scm/adapters/abstract_adapter.rb
22 22
  module Scm
23 23
    module Adapters
24 24
      class AbstractAdapter #:nodoc:
25
        include Redmine::Utils::Shell
25 26

  
26 27
        # raised if scm command exited with error, e.g. unknown revision.
27 28
        class ScmCommandAborted < ::Redmine::Scm::Adapters::CommandFailed; end
28 29

  
29 30
        class << self
31

  
30 32
          def client_command
31 33
            ""
32 34
          end
33 35

  
36
          def shell_quote(str)
37
            Redmine::Utils::Shell.shell_quote str
38
          end
39

  
34 40
          def shell_quote_command
35
            if Redmine::Platform.mswin? && RUBY_PLATFORM == 'java'
36
              client_command
37
            else
38
              shell_quote(client_command)
39
            end
41
            Redmine::Utils::Shell.shell_quote_command client_command
40 42
          end
41 43

  
42 44
          # Returns the version of the scm client
......
64 66
            true
65 67
          end
66 68

  
67
          def shell_quote(str)
68
            if Redmine::Platform.mswin?
69
              '"' + str.gsub(/"/, '\\"') + '"'
70
            else
71
              "'" + str.gsub(/'/, "'\"'\"'") + "'"
72
            end
73
          end
74 69
        end
75 70

  
76 71
        def initialize(url, root_url=nil, login=nil, password=nil,
......
180 175
          (path[-1,1] == "/") ? path[0..-2] : path
181 176
        end
182 177

  
183
        def shell_quote(str)
184
          self.class.shell_quote(str)
185
        end
186

  
187 178
      private
188 179
        def retrieve_root_url
189 180
          info = self.info
lib/redmine/utils.rb
64 64
    end
65 65

  
66 66
    module Shell
67

  
68
      module_function
69

  
67 70
      def shell_quote(str)
68 71
        if Redmine::Platform.mswin?
69 72
          '"' + str.gsub(/"/, '\\"') + '"'
......
71 74
          "'" + str.gsub(/'/, "'\"'\"'") + "'"
72 75
        end
73 76
      end
77

  
78
      def shell_quote_command(command)
79
        if Redmine::Platform.mswin? && RUBY_PLATFORM == 'java'
80
          command
81
        else
82
          shell_quote(command)
83
        end
84
      end
74 85
    end
75 86

  
76 87
    module DateCalculation
    (1-1/1)