lib/PublicInbox/WWW.pm | 10 ++++++---- diff --git a/lib/PublicInbox/WWW.pm b/lib/PublicInbox/WWW.pm index b4b012f962fb81ce0f029f59231fa162b0b5db57..95dfcbf03fad97c9810deee50e290ad37f003af2 100644 --- a/lib/PublicInbox/WWW.pm +++ b/lib/PublicInbox/WWW.pm @@ -244,10 +244,12 @@ chomp $desc; my $urls = try_cat("$git_dir/cloneurl"); my @urls = split(/\r?\n/, $urls || ''); - my $nurls = scalar @urls; - if ($nurls == 0) { - $urls = '($GIT_DIR/cloneurl missing)'; - } elsif ($nurls == 1) { + my %seen = map { $_ => 1 } @urls; + my $cgi = $ctx->{cgi}; + my $http = (ref($cgi) eq 'CGI') ? $cgi->url(-base) . "/$listname" : + $cgi->base->as_string . $listname; + $seen{$http} or unshift @urls, $http; + if (scalar(@urls) == 1) { $urls = "git URL for ssoma: ' . $urls[0]; } else {