]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/LeiLcat.pm
t/watch_maildir: support non-master default branch
[public-inbox.git] / lib / PublicInbox / LeiLcat.pm
index c13e2153e88da0daa5b87d8978d85fff1d89a3ee..191f6f244857221d0086db1b0548d64ed35b2c8a 100644 (file)
@@ -124,18 +124,15 @@ could not extract Message-ID from $x
 
 sub _stdin { # PublicInbox::InputPipe::consume callback for --stdin
        my ($lei) = @_; # $_[1] = $rbuf
-       if (defined($_[1])) {
-               $_[1] eq '' and return eval {
-                       $lei->fchdir or return;
-                       my @argv = split(/\s+/, $lei->{mset_opt}->{qstr});
-                       $lei->{mset_opt}->{qstr} = extract_all($lei, @argv)
-                               or return;
-                       $lei->_start_query;
-               };
-               $lei->{mset_opt}->{qstr} .= $_[1];
-       } else {
-               $lei->fail("error reading stdin: $!");
-       }
+       $_[1] // return $lei->fail("error reading stdin: $!");
+       return $lei->{mset_opt}->{qstr} .= $_[1] if $_[1] ne '';
+       eval {
+               $lei->fchdir;
+               my @argv = split(/\s+/, $lei->{mset_opt}->{qstr});
+               $lei->{mset_opt}->{qstr} = extract_all($lei, @argv) or return;
+               $lei->_start_query;
+       };
+       $lei->fail($@) if $@;
 }
 
 sub lei_lcat {
@@ -144,9 +141,8 @@ sub lei_lcat {
        $lei->ale->refresh_externals($lxs, $lei);
        $lei->_lei_store(1);
        my $opt = $lei->{opt};
-       my %mset_opt = map { $_ => $opt->{$_} } qw(threads limit offset);
+       my %mset_opt;
        $mset_opt{asc} = $opt->{'reverse'} ? 1 : 0;
-       $mset_opt{limit} //= 10000;
        $opt->{sort} //= 'relevance';
        $mset_opt{relevance} = 1;
        $lei->{mset_opt} = \%mset_opt;