diff options
Diffstat (limited to 'lib/PublicInbox/WwwCoderepo.pm')
-rw-r--r-- | lib/PublicInbox/WwwCoderepo.pm | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/PublicInbox/WwwCoderepo.pm b/lib/PublicInbox/WwwCoderepo.pm index 2fba0cd0..668b6398 100644 --- a/lib/PublicInbox/WwwCoderepo.pm +++ b/lib/PublicInbox/WwwCoderepo.pm @@ -18,6 +18,7 @@ use PublicInbox::Hval qw(ascii_html); use PublicInbox::ViewDiff qw(uri_escape_path); use PublicInbox::RepoSnapshot; use PublicInbox::RepoAtom; +use PublicInbox::RepoTree; my $EACH_REF = "git for-each-ref --sort=-creatordate --format='%(HEAD)%00". join('%00', map { "%($_)" } @@ -226,6 +227,11 @@ sub srv { # endpoint called by PublicInbox::WWW ($ctx->{git} = $cr->{$1}) and return PublicInbox::ViewVCS::show($ctx, $2); + if ($path_info =~ m!\A/(.+?)/tree/(.*)\z! and + ($ctx->{git} = $cr->{$1})) { + return PublicInbox::RepoTree::srv_tree($ctx, $2) // r(404); + } + # snapshots: if ($path_info =~ m!\A/(.+?)/snapshot/([^/]+)\z! and ($ctx->{git} = $cr->{$1})) { |