lib/PublicInbox/LeiMirror.pm | 7 ++++++- diff --git a/lib/PublicInbox/LeiMirror.pm b/lib/PublicInbox/LeiMirror.pm index 04d9494c604388ca4e9c0f832b9233c653cb9ac7..4464b6b109b9bc1884c6a3d1a8cd73d29980927f 100644 --- a/lib/PublicInbox/LeiMirror.pm +++ b/lib/PublicInbox/LeiMirror.pm @@ -315,7 +315,12 @@ while (my ($ref, $oid) = each %src) { upr($lei, $w, 'create', $ref, $oid); } close($w) or warn "E: close(update-ref --stdin): $! (need git 1.8.5+)\n"; - $LIVE->{$pid} = [ \&reap_cmd, $fgrp, $cmd ]; + my $pack = PublicInbox::OnDestroy->new($$, \&pack_dst, $fgrp); + $LIVE->{$pid} = [ \&reap_cmd, $fgrp, $cmd, $pack ]; +} + +sub pack_dst { # packs lightweight satellite repos + my ($fgrp) = @_; pack_refs($fgrp, $fgrp->{cur_dst}); }