X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=lib%2FPublicInbox%2FLeiInput.pm;h=88889f45cbd1ca964c0a1bc6da45db1125530617;hb=3416172dbe6d05cc3272829d5448323cea3c8961;hp=38d3d36df27248b94bd05ebe307498dc73f01ae9;hpb=499aea505f58be23a125f4fe2e3af654d42eea9f;p=public-inbox.git diff --git a/lib/PublicInbox/LeiInput.pm b/lib/PublicInbox/LeiInput.pm index 38d3d36d..88889f45 100644 --- a/lib/PublicInbox/LeiInput.pm +++ b/lib/PublicInbox/LeiInput.pm @@ -270,6 +270,10 @@ sub prepare_inputs { # returns undef on error $sync and $input = 'maildir:'. $lei->abs_path($input_path); push @md, $input; + } elsif ($self->{missing_ok} && !-e _) { + # for "lei rm-watch" on missing Maildir + $sync and $input = 'maildir:'. + $lei->abs_path($input_path); } else { return $lei->fail("Unable to handle $input"); } @@ -300,10 +304,15 @@ $input is `eml', not --in-format=$in_fmt push @f, $input; } elsif (-d "$input/new" && -d "$input/cur") { if ($sync) { - $input = $lei->abs_path($input); + $input = 'maildir:'. + $lei->abs_path($input); push @{$sync->{ok}}, $input; } push @md, $input; + } elsif ($self->{missing_ok} && !-e $input) { + # for lei rm-watch + $sync and $input = 'maildir:'. + $lei->abs_path($input); } else { return $lei->fail("Unable to handle $input") } @@ -371,6 +380,7 @@ sub input_only_net_merge_all_done { # like Getopt::Long, but for +kw:FOO and -kw:FOO to prepare # for update_xvmd -> update_vmd +# returns something like { "+L" => [ @Labels ], ... } sub vmd_mod_extract { my $argv = $_[-1]; my $vmd_mod = {};