diff options
author | Krzesimir Nowak <krzesimir@endocode.com> | 2013-12-11 12:54:41 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-12-12 12:37:36 -0800 |
commit | c0bc2265ef74331c0314be4a3f148e784800c3de (patch) | |
tree | 20a61752f69423d2972e3434bdef810d53745357 /gitweb | |
parent | Git 1.8.5.1 (diff) | |
download | tgif-c0bc2265ef74331c0314be4a3f148e784800c3de.tar.xz |
gitweb: Move check-ref-format code into separate function
This check will be used in more than one place later.
Signed-off-by: Krzesimir Nowak <krzesimir@endocode.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'gitweb')
-rwxr-xr-x | gitweb/gitweb.perl | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 68c77f6f8f..46bd6ac8c3 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -1452,6 +1452,16 @@ sub validate_pathname { return $input; } +sub is_valid_ref_format { + my $input = shift || return undef; + + # restrictions on ref name according to git-check-ref-format + if ($input =~ m!(/\.|\.\.|[\000-\040\177 ~^:?*\[]|/$)!) { + return undef; + } + return $input; +} + sub validate_refname { my $input = shift || return undef; @@ -1462,10 +1472,9 @@ sub validate_refname { # it must be correct pathname $input = validate_pathname($input) or return undef; - # restrictions on ref name according to git-check-ref-format - if ($input =~ m!(/\.|\.\.|[\000-\040\177 ~^:?*\[]|/$)!) { - return undef; - } + # check git-check-ref-format restrictions + is_valid_ref_format($input) + or return undef; return $input; } |