diff options
author | Douwe Maan <douwe@gitlab.com> | 2015-03-24 15:21:37 +0100 |
---|---|---|
committer | Douwe Maan <douwe@gitlab.com> | 2015-03-27 11:10:56 +0100 |
commit | 5f93b0e3da9f84f44c5f00af5d3e48c277d68d5b (patch) | |
tree | 3bad1fab55938d2770f9a5b6891634793c64727d /lib | |
parent | dfe0f9eedf040c6c266161239b6e2ede77c2b7dc (diff) | |
download | gitlab-ce-5f93b0e3da9f84f44c5f00af5d3e48c277d68d5b.tar.gz |
Don't allow username to end in period.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab/markdown.rb | 2 | ||||
-rw-r--r-- | lib/gitlab/regex.rb | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/lib/gitlab/markdown.rb b/lib/gitlab/markdown.rb index 41bb8d08924..0b29138a729 100644 --- a/lib/gitlab/markdown.rb +++ b/lib/gitlab/markdown.rb @@ -152,7 +152,7 @@ module Gitlab text end - NAME_STR = '[a-zA-Z0-9_][a-zA-Z0-9_\-\.]*' + NAME_STR = Gitlab::Regex::NAMESPACE_REGEX_STR PROJ_STR = "(?<project>#{NAME_STR}/#{NAME_STR})" REFERENCE_PATTERN = %r{ diff --git a/lib/gitlab/regex.rb b/lib/gitlab/regex.rb index 08fcf9c6dc0..0571574aa4f 100644 --- a/lib/gitlab/regex.rb +++ b/lib/gitlab/regex.rb @@ -2,13 +2,15 @@ module Gitlab module Regex extend self + NAMESPACE_REGEX_STR = '(?:[a-zA-Z0-9_\.][a-zA-Z0-9_\-\.]*[a-zA-Z0-9_\-]|[a-zA-Z0-9_])'.freeze + def namespace_regex - @namespace_regex ||= /\A[a-zA-Z0-9_.][a-zA-Z0-9_\-\.]*(?<!\.git)\z/.freeze + @namespace_regex ||= /\A#{NAMESPACE_REGEX_STR}\z/.freeze end def namespace_regex_message "can contain only letters, digits, '_', '-' and '.'. " \ - "Cannot start with '-' or end in '.git'" \ + "Cannot start with '-' or end in '.'." \ end |