]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/V2Writable.pm
spawn: allow passing GLOB handles for redirects
[public-inbox.git] / lib / PublicInbox / V2Writable.pm
index 02f313b022c01dc7a52140016a4b1715a20f0f37..c614e20c382518e6d257b59871b4eb109d839869 100644 (file)
@@ -62,10 +62,13 @@ sub count_shards ($) {
        # Also, shard count may change while -watch is running
        # due to "xcpdb --reshard"
        if (-d $xpfx) {
+               require PublicInbox::Search;
+               PublicInbox::Search::load_xapian();
+               my $XapianDatabase = $PublicInbox::Search::X{Database};
                foreach my $shard (<$xpfx/*>) {
                        -d $shard && $shard =~ m!/[0-9]+\z! or next;
                        eval {
-                               Search::Xapian::Database->new($shard)->close;
+                               $XapianDatabase->new($shard)->close;
                                $n++;
                        };
                }
@@ -470,7 +473,7 @@ sub git_hash_raw ($$) {
 
        my ($r, $w);
        pipe($r, $w) or die "failed to create pipe: $!";
-       my $rdr = { 0 => fileno($tmp_fh), 1 => fileno($w) };
+       my $rdr = { 0 => $tmp_fh, 1 => $w };
        my $git_dir = $self->{-inbox}->git->{git_dir};
        my $cmd = ['git', "--git-dir=$git_dir", qw(hash-object --stdin)];
        my $pid = spawn($cmd, undef, $rdr);
@@ -1204,7 +1207,7 @@ sub unindex ($$$$) {
 
        # ensure any blob can not longer be accessed via dumb HTTP
        PublicInbox::Import::run_die(['git', "--git-dir=$git->{git_dir}",
-               qw(-c gc.reflogExpire=now gc --prune=all)]);
+               qw(-c gc.reflogExpire=now gc --prune=all --quiet)]);
 }
 
 sub sync_ranges ($$$) {