Code

gitweb: Fix export check in git_get_projects_list
authorDevin Doucette <devin@doucette.cc>
Sat, 27 Dec 2008 09:39:31 +0000 (02:39 -0700)
committerJunio C Hamano <gitster@pobox.com>
Sun, 28 Dec 2008 06:34:03 +0000 (22:34 -0800)
When $filter was empty, the path passed to check_export_ok would
contain an extra '/', which some implementations of export_auth_hook
are sensitive to.

It makes more sense to fix this here than to handle the special case
in each implementation of export_auth_hook.

Signed-off-by: Devin Doucette <devin@doucette.cc>
Acked-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
gitweb/gitweb.perl

index 8f574c7b364257ed14e0a51d57eb163ec38b182c..99f71b47c2a6b53bb52ce29e96361e7c2acbe19d 100755 (executable)
@@ -2147,8 +2147,9 @@ sub git_get_projects_list {
 
                                my $subdir = substr($File::Find::name, $pfxlen + 1);
                                # we check related file in $projectroot
-                               if (check_export_ok("$projectroot/$filter/$subdir")) {
-                                       push @list, { path => ($filter ? "$filter/" : '') . $subdir };
+                               my $path = ($filter ? "$filter/" : '') . $subdir;
+                               if (check_export_ok("$projectroot/$path")) {
+                                       push @list, { path => $path };
                                        $File::Find::prune = 1;
                                }
                        },