]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/LEI.pm
lei note-event: clear_src on ENOENT
[public-inbox.git] / lib / PublicInbox / LEI.pm
index 6b989b33647ebb58ac75eb3323b50c03e0cd7ac9..c1f28f7b31bf03d82bfe22eb76a226988f307054 100644 (file)
@@ -19,7 +19,7 @@ use IO::Handle ();
 use Fcntl qw(SEEK_SET);
 use PublicInbox::Config;
 use PublicInbox::Syscall qw(EPOLLIN);
-use PublicInbox::DS qw(now dwaitpid);
+use PublicInbox::DS qw(dwaitpid);
 use PublicInbox::Spawn qw(spawn popen_rd);
 use PublicInbox::Lock;
 use PublicInbox::Eml;
@@ -178,8 +178,8 @@ our %CMD = ( # sorted in order of importance/use:
        shared color! mail-sync!), @c_opt, opt_dash('limit|n=i', '[0-9]+') ],
 
 'up' => [ 'OUTPUT...|--all', 'update saved search',
-       qw(jobs|j=s lock=s@ alert=s@ mua=s verbose|v+
-       remote-fudge-time=s all:s), @c_opt ],
+       qw(jobs|j=s lock=s@ alert=s@ mua=s verbose|v+ exclude=s@
+       remote-fudge-time=s all:s remote! local! external!), @c_opt ],
 
 'lcat' => [ '--stdin|MSGID_OR_URL...', 'display local copy of message(s)',
        'stdin|', # /|\z/ must be first for lone dash
@@ -510,10 +510,10 @@ sub sigpipe_handler { # handles SIGPIPE from @WQ_KEYS workers
 }
 
 sub fail ($$;$) {
-       my ($self, $buf, $exit_code) = @_;
+       my ($self, $msg, $exit_code) = @_;
        local $current_lei = $self;
        $self->{failed}++;
-       warn($buf, "\n") if defined $buf;
+       warn(substr($msg, -1, 1) eq "\n" ? $msg : "$msg\n") if defined $msg;
        $self->{pkt_op_p}->pkt_do('fail_handler') if $self->{pkt_op_p};
        x_it($self, ($exit_code // 1) << 8);
        undef;
@@ -534,7 +534,7 @@ sub child_error { # passes non-fatal curl exit codes to user
        my ($self, $child_error, $msg) = @_; # child_error is $?
        local $current_lei = $self;
        $child_error ||= 1 << 8;
-       warn($msg, "\n") if defined $msg;
+       warn(substr($msg, -1, 1) eq "\n" ? $msg : "$msg\n") if defined $msg;
        if ($self->{pkt_op_p}) { # to top lei-daemon
                $self->{pkt_op_p}->pkt_do('child_error', $child_error);
        } elsif ($self->{sock}) { # to lei(1) client
@@ -1315,11 +1315,10 @@ sub lazy_start {
                        $quit->();
                }
                return 1 if defined($path);
-               my $now = now();
                my $n = 0;
                for my $s (values %$dmap) {
                        $s->can('busy') or next;
-                       if ($s->busy($now)) {
+                       if ($s->busy) {
                                ++$n;
                        } else {
                                $s->close;