lib/PublicInbox/LEI.pm | 7 ++++--- lib/PublicInbox/LeiBlob.pm | 2 +- lib/PublicInbox/LeiIndex.pm | 2 +- lib/PublicInbox/LeiInput.pm | 4 ++-- lib/PublicInbox/LeiLcat.pm | 2 +- lib/PublicInbox/LeiRediff.pm | 2 +- lib/PublicInbox/LeiUp.pm | 2 +- diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index 9e9aa165acc1f689bac09b69b5ac93068f647659..8b6c1d36f179e8969510ed3f4cf4e85c2c61cb1d 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -532,6 +532,7 @@ sub puts ($;@) { out(shift, map { "$_\n" } @_) } sub child_error { # passes non-fatal curl exit codes to user my ($self, $child_error, $msg) = @_; # child_error is $? + $child_error ||= 1 << 8; $self->err($msg) if $msg; if ($self->{pkt_op_p}) { # to top lei-daemon $self->{pkt_op_p}->pkt_do('child_error', $child_error); @@ -1341,7 +1342,7 @@ my ($self) = @_; if (my $counters = delete $self->{counters}) { for my $k (sort keys %$counters) { my $nr = $counters->{$k}; - $self->child_error(1 << 8, "$nr $k messages"); + $self->child_error(0, "$nr $k messages"); } } $self->{1}->autoflush(1) if $self->{1}; @@ -1417,7 +1418,7 @@ } else { add_maildir_watch($d, $cfg_f); } } else { # TODO: imap/nntp/jmap - $lei->child_error(1, "E: watch $url not supported, yet") + $lei->child_error(0, "E: watch $url not supported, yet") } } @@ -1452,7 +1453,7 @@ if ($url =~ /\Amaildir:(.+)/i) { my $d = canonpath_harder($1); cancel_maildir_watch($d, $cfg_f); } else { # TODO: imap/nntp/jmap - $lei->child_error(1, "E: watch $url TODO"); + $lei->child_error(0, "E: watch $url TODO"); } } } diff --git a/lib/PublicInbox/LeiBlob.pm b/lib/PublicInbox/LeiBlob.pm index 21003894026099d55637684cf880ed291222cd11..b94f67a029ff3bbd967dea8487c67d59f93b2730 100644 --- a/lib/PublicInbox/LeiBlob.pm +++ b/lib/PublicInbox/LeiBlob.pm @@ -32,7 +32,7 @@ my ($res, $self) = @_; my $lei = $self->{lei}; my $log_buf = delete $lei->{'log_buf'}; $$log_buf =~ s/^/# /sgm; - ref($res) eq 'ARRAY' or return $lei->child_error(1 << 8, $$log_buf); + ref($res) eq 'ARRAY' or return $lei->child_error(0, $$log_buf); $lei->qerr($$log_buf); my ($git, $oid, $type, $size, $di) = @$res; my $gd = $git->{git_dir}; diff --git a/lib/PublicInbox/LeiIndex.pm b/lib/PublicInbox/LeiIndex.pm index 5b545998ba87d6905383d9641e3e32ec159820b4..ef3e4d0b299af603b806d84d11e6c36217ecc423 100644 --- a/lib/PublicInbox/LeiIndex.pm +++ b/lib/PublicInbox/LeiIndex.pm @@ -21,7 +21,7 @@ } sub input_fh { # overrides PublicInbox::LeiInput::input_fh my ($self, $ifmt, $fh, $input, @args) = @_; - $self->{lei}->child_error(1<<8, <{lei}->child_error(0, < } // - return $self->{lei}->child_error(1 << 8, <<""); + return $self->{lei}->child_error(0, <<""); error reading $name: $! # mutt pipes single RFC822 messages with a "From " line, @@ -104,7 +104,7 @@ eval { $self->input_fh('mboxrd', $fh, $url, @args) }; my $err = $@; waitpid($pid, 0); $? || $err and - $lei->child_error($? || 1, "@$cmd failed".$err ? " $err" : ''); + $lei->child_error($?, "@$cmd failed".$err ? " $err" : ''); } sub input_path_url { diff --git a/lib/PublicInbox/LeiLcat.pm b/lib/PublicInbox/LeiLcat.pm index 9d95e899c2d4888c1b0166eec298d96a19a673b2..1e54c3bfa28ee95162e5691dfdd90a6ed22dd075 100644 --- a/lib/PublicInbox/LeiLcat.pm +++ b/lib/PublicInbox/LeiLcat.pm @@ -18,7 +18,7 @@ my $folders = [ $folder]; my $err = $lms->arg2folder($lei, $folders); $lei->qerr(@{$err->{qerr}}) if $err && $err->{qerr}; if ($err && $err->{fail}) { - $lei->child_error(1 << 8, "# unknown folder: $folder"); + $lei->child_error(0, "# unknown folder: $folder"); } else { for my $f (@$folders) { my $fid = $lms->fid_for($f); diff --git a/lib/PublicInbox/LeiRediff.pm b/lib/PublicInbox/LeiRediff.pm index 0ba5897c7ba8748ec1a1a358fd44516975c265b3..60286b065359430a1d6809ac073bea0482433428 100644 --- a/lib/PublicInbox/LeiRediff.pm +++ b/lib/PublicInbox/LeiRediff.pm @@ -23,7 +23,7 @@ my ($res, $self) = @_; my $lei = $self->{lei}; my $log_buf = delete $lei->{log_buf}; $$log_buf =~ s/^/# /sgm; - ref($res) eq 'ARRAY' or return $lei->child_error(1 << 8, $$log_buf); + ref($res) eq 'ARRAY' or return $lei->child_error(0, $$log_buf); $lei->qerr($$log_buf); my ($git, $oid, $type, $size, $di) = @$res; my $oid_want = delete $self->{cur_oid_want}; diff --git a/lib/PublicInbox/LeiUp.pm b/lib/PublicInbox/LeiUp.pm index 85efd9f5ded69c69341332566d61d2a1f8f6466e..e1da64aa3847e766a1b983af97b6aa14ebba1660 100644 --- a/lib/PublicInbox/LeiUp.pm +++ b/lib/PublicInbox/LeiUp.pm @@ -59,7 +59,7 @@ $l->qerr("# updating $out"); up1($l, $out); $l->qerr("# $out done"); }; - $l->child_error(1 << 8, $@) if $@; + $l->child_error(0, $@) if $@; } sub lei_up {