diff options
author | Matthieu Moy <Matthieu.Moy@imag.fr> | 2012-01-04 11:07:45 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-01-04 09:54:06 -0800 |
commit | ac593b76dde42fa8340fb60e7d6fc315a5be7c40 (patch) | |
tree | b13135123160433ac9fa679b4e1d02c0170f215e /gitweb/gitweb.perl | |
parent | gitweb: Restructure projects list generation (diff) | |
download | tgif-ac593b76dde42fa8340fb60e7d6fc315a5be7c40.tar.xz |
gitweb: accept trailing "/" in $project_list
The current code is removing the trailing "/", but computing the string
length on the previous value, i.e. with the trailing "/". Later in the
code, we do
my $path = substr($File::Find::name, $pfxlen + 1);
And the "$pfxlen + 1" is supposed to mean "the length of the prefix, plus
1 for the / separating the prefix and the path", but with an incorrect
$pfxlen, this basically eats the first character of the path, and yields
"404 - No projects found".
While we're there, also fix $pfxdepth to use $dir, although a change of 1
in the depth shouldn't really matter.
Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'gitweb/gitweb.perl')
-rwxr-xr-x | gitweb/gitweb.perl | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index 014b33b50a..e12ddba761 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -2661,8 +2661,8 @@ sub git_get_projects_list { my $dir = $projects_list; # remove the trailing "/" $dir =~ s!/+$!!; - my $pfxlen = length("$projects_list"); - my $pfxdepth = ($projects_list =~ tr!/!!); + my $pfxlen = length("$dir"); + my $pfxdepth = ($dir =~ tr!/!!); # when filtering, search only given subdirectory if ($filter) { $dir .= "/$filter"; |