about summary refs log tree commit homepage
path: root/lib
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2020-02-04 04:44:22 +0000
committerEric Wong <e@yhbt.net>2020-02-04 21:39:51 +0000
commitbf4d35dd2f6389e9aa4dc87fdfaef801fa5b9108 (patch)
tree40fda80faa4da33b72120fe2427f5e9bf3208832 /lib
parentc5ce0f75020db9b3fa7dae9958bedcdb08452e04 (diff)
downloadpublic-inbox-bf4d35dd2f6389e9aa4dc87fdfaef801fa5b9108.tar.gz
Instead of serving $INBOX_DIR/all.git/description, since
$INBOX_DIR/all.git/description is not described in the
default message when it's missing.
Diffstat (limited to 'lib')
-rw-r--r--lib/PublicInbox/WWW.pm11
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/PublicInbox/WWW.pm b/lib/PublicInbox/WWW.pm
index 3ce7cc2a..02b5ded3 100644
--- a/lib/PublicInbox/WWW.pm
+++ b/lib/PublicInbox/WWW.pm
@@ -85,6 +85,8 @@ sub call {
                 invalid_inbox($ctx, $1) || get_atom($ctx);
         } elsif ($path_info =~ m!$INBOX_RE/new\.html\z!o) {
                 invalid_inbox($ctx, $1) || get_new($ctx);
+        } elsif ($path_info =~ m!$INBOX_RE/description\z!o) {
+                get_description($ctx, $1);
         } elsif ($path_info =~ m!$INBOX_RE/(?:(?:git/)?([0-9]+)(?:\.git)?/)?
                                 ($PublicInbox::GitHTTPBackend::ANY)\z!ox) {
                 my ($epoch, $path) = ($2, $3);
@@ -621,4 +623,13 @@ sub get_css ($$$) {
         [ 200, $h, [ $css ] ];
 }
 
+sub get_description {
+        my ($ctx, $inbox) = @_;
+        invalid_inbox($ctx, $inbox) || do {
+                my $d = $ctx->{-inbox}->description . "\n";
+                [ 200, [ 'Content-Length', bytes::length($d),
+                        'Content-Type', 'text/plain' ], [ $d ] ];
+        };
+}
+
 1;