diff options
author | Go MAEDA <maeda@farend.jp> | 2019-03-27 02:15:24 +0000 |
---|---|---|
committer | Go MAEDA <maeda@farend.jp> | 2019-03-27 02:15:24 +0000 |
commit | 72e1451159206af1c335b23e0c1e5bf9ed84bc85 (patch) | |
tree | 598902ed0066c4b292a6c1612aad4b203cbb81de /lib/redmine/scm/adapters | |
parent | f0d579adebfe3c5da93135fbaa3d9ec503d06855 (diff) | |
download | redmine-72e1451159206af1c335b23e0c1e5bf9ed84bc85.tar.gz redmine-72e1451159206af1c335b23e0c1e5bf9ed84bc85.zip |
Use Regexp#match? to reduce allocations of MatchData object (#28940).
Patch by Pavel Rosický.
git-svn-id: http://svn.redmine.org/redmine/trunk@18011 e93f8b46-1217-0410-a6f0-8f06a7374b81
Diffstat (limited to 'lib/redmine/scm/adapters')
-rw-r--r-- | lib/redmine/scm/adapters/abstract_adapter.rb | 2 | ||||
-rw-r--r-- | lib/redmine/scm/adapters/cvs_adapter.rb | 6 | ||||
-rw-r--r-- | lib/redmine/scm/adapters/filesystem_adapter.rb | 2 | ||||
-rw-r--r-- | lib/redmine/scm/adapters/mercurial_adapter.rb | 4 | ||||
-rw-r--r-- | lib/redmine/scm/adapters/subversion_adapter.rb | 2 |
5 files changed, 8 insertions, 8 deletions
diff --git a/lib/redmine/scm/adapters/abstract_adapter.rb b/lib/redmine/scm/adapters/abstract_adapter.rb index 55753d27e..d66f0da25 100644 --- a/lib/redmine/scm/adapters/abstract_adapter.rb +++ b/lib/redmine/scm/adapters/abstract_adapter.rb @@ -186,7 +186,7 @@ module Redmine def target(path, sq=true) path ||= '' - base = path.match(/^\//) ? root_url : url + base = /^\//.match?(path) ? root_url : url str = "#{base}/#{path}".gsub(/[?<>\*]/, '') if sq str = shell_quote(str) diff --git a/lib/redmine/scm/adapters/cvs_adapter.rb b/lib/redmine/scm/adapters/cvs_adapter.rb index baaa723ab..be9c3d466 100644 --- a/lib/redmine/scm/adapters/cvs_adapter.rb +++ b/lib/redmine/scm/adapters/cvs_adapter.rb @@ -170,7 +170,7 @@ module Redmine file_state = nil branch_map = nil io.each_line() do |line| - if state != "revision" && /^#{ENDLOG}/ =~ line + if state != "revision" && /^#{ENDLOG}/.match?(line) commit_log = "" revision = nil state = "entry_start" @@ -183,9 +183,9 @@ module Redmine logger.debug("Path #{entry_path} <=> Name #{entry_name}") elsif /^head: (.+)$/ =~ line entry_headRev = $1 #unless entry.nil? - elsif /^symbolic names:/ =~ line + elsif /^symbolic names:/.match?(line) state = "symbolic" #unless entry.nil? - elsif /^#{STARTLOG}/ =~ line + elsif /^#{STARTLOG}/.match?(line) commit_log = "" state = "revision" end diff --git a/lib/redmine/scm/adapters/filesystem_adapter.rb b/lib/redmine/scm/adapters/filesystem_adapter.rb index 4335244be..0a6a32d7b 100644 --- a/lib/redmine/scm/adapters/filesystem_adapter.rb +++ b/lib/redmine/scm/adapters/filesystem_adapter.rb @@ -109,7 +109,7 @@ module Redmine # Here we do not shell-out, so we do not want quotes. def target(path=nil) # Prevent the use of .. - if path and !path.match(/(^|\/)\.\.(\/|$)/) + if path and !/(^|\/)\.\.(\/|$)/.match?(path) return "#{self.url}#{without_leading_slash(path)}" end return self.url diff --git a/lib/redmine/scm/adapters/mercurial_adapter.rb b/lib/redmine/scm/adapters/mercurial_adapter.rb index b03da11c1..d5a87f2b3 100644 --- a/lib/redmine/scm/adapters/mercurial_adapter.rb +++ b/lib/redmine/scm/adapters/mercurial_adapter.rb @@ -297,10 +297,10 @@ module Redmine # Runs 'hg' command with the given args def hg(*args, &block) # as of hg 4.4.1, early parsing of bool options is not terminated at '--' - if args.any? { |s| s =~ HG_EARLY_BOOL_ARG } + if args.any? { |s| HG_EARLY_BOOL_ARG.match?(s) } raise HgCommandArgumentError, "malicious command argument detected" end - if args.take_while { |s| s != '--' }.any? { |s| s =~ HG_EARLY_LIST_ARG } + if args.take_while { |s| s != '--' }.any? { |s| HG_EARLY_LIST_ARG.match?(s) } raise HgCommandArgumentError, "malicious command argument detected" end diff --git a/lib/redmine/scm/adapters/subversion_adapter.rb b/lib/redmine/scm/adapters/subversion_adapter.rb index 7e77e3fb9..5ee7159c0 100644 --- a/lib/redmine/scm/adapters/subversion_adapter.rb +++ b/lib/redmine/scm/adapters/subversion_adapter.rb @@ -267,7 +267,7 @@ module Redmine end def target(path = '') - base = path.match(/^\//) ? root_url : url + base = /^\//.match?(path) ? root_url : url uri = "#{base}/#{path}" uri = URI.escape(URI.escape(uri), '[]') shell_quote(uri.gsub(/[?<>\*]/, '')) |