diff options
Diffstat (limited to 'lib/PublicInbox/RepoSnapshot.pm')
-rw-r--r-- | lib/PublicInbox/RepoSnapshot.pm | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/PublicInbox/RepoSnapshot.pm b/lib/PublicInbox/RepoSnapshot.pm index 460340e6..826392a8 100644 --- a/lib/PublicInbox/RepoSnapshot.pm +++ b/lib/PublicInbox/RepoSnapshot.pm @@ -72,10 +72,12 @@ sub ver_check { # git->check_async callback sub srv { my ($ctx, $fn) = @_; return if $fn =~ /["\s]/s; - $fn =~ s/\.($SUFFIX)\z//o or return; + my $fmt = $ctx->{wcr}->{snapshots}; # TODO per-repo snapshots + $fn =~ s/\.($SUFFIX)\z//o and $fmt->{$1} or return; $ctx->{snap_fmt} = $1; my $pfx = $ctx->{git}->local_nick // return; $pfx =~ s/(?:\.git)?\z/-/; + ($pfx) = ($pfx =~ m!([^/]+)\z!); substr($fn, 0, length($pfx)) eq $pfx or return; $ctx->{snap_pfx} = $fn; my $v = $ctx->{snap_ver} = substr($fn, length($pfx), length($fn)); |