]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/ViewVCS.pm
coderepo: consolidate git --batch-check users
[public-inbox.git] / lib / PublicInbox / ViewVCS.pm
index eae5b7f416cf88f8c35823dc5647ef01b0c415ca..37b688ed586e4e6ae42837cad03679d5ebb7411b 100644 (file)
@@ -126,9 +126,9 @@ sub cmt_title { # git->cat_async callback
 }
 
 sub do_cat_async {
-       my ($ctx, $cb, @oids) = @_;
+       my ($ctx, $cb, @req) = @_;
        # favor git(1) over Gcf2 (libgit2) for SHA-256 support
-       $ctx->{git}->cat_async($_, $cb, $ctx) for @oids;
+       $ctx->{git}->cat_async($_, $cb, $ctx) for @req;
        if ($ctx->{env}->{'pi-httpd.async'}) {
                PublicInbox::GitAsyncCat::watch_cat($ctx->{git});
        } else { # synchronous, generic PSGI
@@ -136,6 +136,16 @@ sub do_cat_async {
        }
 }
 
+sub do_check_async {
+       my ($ctx, $cb, @req) = @_;
+       if ($ctx->{env}->{'pi-httpd.async'}) {
+               async_check($ctx, $_, $cb, $ctx) for @req;
+       } else { # synchronous, generic PSGI
+               $ctx->{git}->check_async($_, $cb, $ctx) for @req;
+               $ctx->{git}->check_async_wait;
+       }
+}
+
 sub show_commit_start { # ->psgi_qx callback
        my ($bref, $ctx) = @_;
        if (my $qsp_err = delete $ctx->{-qsp_err}) {