X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FLeiXSearch.pm;h=5965274ca211396df49e263ec6ade1508e3ba458;hb=7b654d175cf2e31b;hp=f9aa870e0346247acbde426b7bda894105a38725;hpb=f9557e2c6b7510d278310066fe7c26f84cae6e1d;p=public-inbox.git diff --git a/lib/PublicInbox/LeiXSearch.pm b/lib/PublicInbox/LeiXSearch.pm index f9aa870e..5965274c 100644 --- a/lib/PublicInbox/LeiXSearch.pm +++ b/lib/PublicInbox/LeiXSearch.pm @@ -400,7 +400,7 @@ sub query_remote_mboxrd { sub git { $_[0]->{git} // die 'BUG: git uninitialized' } -sub xsearch_done_wait { # awaitpid cb (via awaitpid_init) +sub xsearch_done_wait { # awaitpid cb my ($pid, $wq, $lei) = @_; return if !$?; my $s = $? & 127; @@ -572,16 +572,16 @@ sub do_query { fcntl($b_r, $F_SETPIPE_SZ, 4096) if $F_SETPIPE_SZ; $l2m->{au_peers} = [ $a_r, $a_w, $b_r, $b_w ]; } - $l2m->awaitpid_init(\&xsearch_done_wait, $lei); $l2m->wq_workers_start('lei2mail', undef, - $lei->oldset, { lei => $lei }); + $lei->oldset, { lei => $lei }, + \&xsearch_done_wait, $lei); pipe($lei->{startq}, $lei->{au_done}) or die "pipe: $!"; fcntl($lei->{startq}, $F_SETPIPE_SZ, 4096) if $F_SETPIPE_SZ; delete $l2m->{au_peers}; } - $self->awaitpid_init(\&xsearch_done_wait, $lei); $self->wq_workers_start('lei_xsearch', undef, - $lei->oldset, { lei => $lei }); + $lei->oldset, { lei => $lei }, + \&xsearch_done_wait, $lei); my $op_c = delete $lei->{pkt_op_c}; delete $lei->{pkt_op_p}; @$end = ();