OSDN Git Service

gitweb: skip unreadable subdirectories
authorHielke Christian Braun <hcb@unco.de>
Tue, 18 Jul 2017 08:41:54 +0000 (10:41 +0200)
committerJunio C Hamano <gitster@pobox.com>
Tue, 18 Jul 2017 19:10:17 +0000 (12:10 -0700)
gitweb terminates and shows no project list, if it can not access a
sub-directory in the project root directory while looking for projects
to show.

Work it around by skipping unreadable directories.

Signed-off-by: Hielke Christian Braun <hcb@unco.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
gitweb/gitweb.perl

index d8209c7..8318411 100755 (executable)
@@ -3071,6 +3071,8 @@ sub git_get_projects_list {
                                return if (m!^[/.]$!);
                                # only directories can be git repositories
                                return unless (-d $_);
+                               # need search permission
+                               return unless (-x $_);
                                # don't traverse too deep (Find is super slow on os x)
                                # $project_maxdepth excludes depth of $projectroot
                                if (($File::Find::name =~ tr!/!!) - $pfxdepth > $project_maxdepth) {