lib/PublicInbox/LeiMirror.pm | 2 +- t/lei-mirror.t | 8 ++++++++ diff --git a/lib/PublicInbox/LeiMirror.pm b/lib/PublicInbox/LeiMirror.pm index fca11ccff037cae4d5b1f4b37e609c36733629fa..638add421d61df703001f753b0a9d9e426c609f6 100644 --- a/lib/PublicInbox/LeiMirror.pm +++ b/lib/PublicInbox/LeiMirror.pm @@ -16,7 +16,7 @@ my $f = "$mrr->{dst}/mirror.done"; if ($?) { $lei->child_error($?); } elsif (!unlink($f)) { - $lei->err("unlink($f): $!"); + $lei->err("unlink($f): $!") unless $!{ENOENT}; } else { $lei->add_external_finish($mrr->{dst}); $lei->qerr("# mirrored $mrr->{src} => $mrr->{dst}"); diff --git a/t/lei-mirror.t b/t/lei-mirror.t index 65b6068ccb917af1ef7992eed14d6276ecd916af..a61a756596fc5b6c14d4db511c37664108af62eb 100644 --- a/t/lei-mirror.t +++ b/t/lei-mirror.t @@ -47,6 +47,14 @@ lei_ok('add-external', "$t1-pfx", '--mirror', "$http/pfx/t1/", \'--mirror v1 w/ PSGI prefix'); + my $d = "$home/404"; + ok(!lei(qw(add-external --mirror), "$http/404", $d), 'mirror 404'); + unlike($lei_err, qr!unlink.*?404/mirror\.done!, + 'no unlink failure message'); + ok(!-d $d, "`404' dir not created"); + lei_ok('ls-external'); + unlike($lei_out, qr!\Q$d\E!s, 'not added to ls-external'); + my %phail = ( HTTPS => 'https://public-inbox.org/' . 'phail', ONION =>