From 7d186c6fa885c7b04c9e2a65b3fc501120b7866f Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Thu, 4 Mar 2021 18:38:29 -0700 Subject: lei q: fix --import-before default and FIFO output commit 6c551bffd75afb41d9b5e4774068abe7e06ed0e7 ("lei q: --import-augment for mbox and mbox.gz") added a check to in _pre_augment_mbox for the option being a ref() to distinguish between default values and user-supplied values (which are non-ref SCALARs from Getopt::Long). However, LeiQuery failed to use a SCALAR ref as the default value, making the check in _pre_augment_mbox useless. We now update LeiQuery to use \1 instead of 1 as the default value so "lei q -f mboxrd ..." to stdout works once again. Unfortunately, testing with redirects pointed to regular files didn't trigger the code paths being updated. Testing with a FIFO revealed further bugs in the FIFO handling code which are also fixed in this commit. We'll also update the $lei->out error message to be less-specific about "stdout" and use the term "output", instead, since LeiToMail replaces stdout for all mbox outputs. --- lib/PublicInbox/LeiQuery.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/PublicInbox/LeiQuery.pm') diff --git a/lib/PublicInbox/LeiQuery.pm b/lib/PublicInbox/LeiQuery.pm index 493a8382..623b92cd 100644 --- a/lib/PublicInbox/LeiQuery.pm +++ b/lib/PublicInbox/LeiQuery.pm @@ -52,7 +52,7 @@ sub lei_q { my $sto = $self->_lei_store(1); my $lse = $sto->search; if (($opt->{'import-remote'} //= 1) | - ($opt->{'import-before'} //= 1)) { + (($opt->{'import-before'} //= \1) ? 1 : 0)) { $sto->write_prepare($self); } if ($opt->{'local'} //= scalar(@only) ? 0 : 1) { -- cgit v1.2.3-24-ge0c7