From f1c0caeaf220bc4b3f2744621bb1870d2fc95d39 Mon Sep 17 00:00:00 2001 From: Shinya Maeda Date: Wed, 3 Apr 2019 13:07:15 +0700 Subject: [PATCH] Fix broken master untrusted regex group We recently dropped a dependency of Ruby's Regular expression in UntrustedRegExp class. Becuase of this, backreferences are not supported anymore and it occured test failures. --- ee/app/models/push_rule.rb | 2 +- ee/spec/models/push_rule_spec.rb | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/ee/app/models/push_rule.rb b/ee/app/models/push_rule.rb index a2a73a9f76382f..40c35885f3806f 100644 --- a/ee/app/models/push_rule.rb +++ b/ee/app/models/push_rule.rb @@ -122,7 +122,7 @@ def commit_committer_check=(value) def data_match?(data, regex, multiline: false) if regex.present? regexp = if allow_regex_fallback? - Gitlab::UntrustedRegexp.with_fallback(regex, multiline: multiline) + Gitlab::UntrustedRegexp::RubySyntax.fabricate!('/' + regex + '/') else Gitlab::UntrustedRegexp.new(regex, multiline: multiline) end diff --git a/ee/spec/models/push_rule_spec.rb b/ee/spec/models/push_rule_spec.rb index 407e4b04fa7c4b..ec3e89b785d988 100644 --- a/ee/spec/models/push_rule_spec.rb +++ b/ee/spec/models/push_rule_spec.rb @@ -62,13 +62,6 @@ subject.branch_name_allowed?('ee-feature-ee') end - - it 'falls back to ruby regex engine' do - push_rule.update_column(:branch_name_regex, '(ee|ce).*\1') - - expect(subject.branch_name_allowed?('ee-feature-ee')).to be true - expect(subject.branch_name_allowed?('ee-feature-ce')).to be false - end end end -- GitLab