]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/NetReader.pm
net_reader: handle single-message IMAP mailboxes
[public-inbox.git] / lib / PublicInbox / NetReader.pm
index 61ea538b75cbcda7e8fdbf09df5bf3f498208a96..22ba4be74b813fbdffd0142c75e41d234b1fc5e3 100644 (file)
@@ -353,17 +353,18 @@ sub _imap_fetch_all ($$$) {
                        PublicInbox::IMAPTracker->new($url) : 0;
        my ($l_uidval, $l_uid) = $itrk ? $itrk->get_last : ();
        $l_uidval //= $r_uidval; # first time
-       $l_uid //= 1;
+       $l_uid //= 0;
        if ($l_uidval != $r_uidval) {
                return "E: $url UIDVALIDITY mismatch\n".
                        "E: local=$l_uidval != remote=$r_uidval";
        }
        my $r_uid = $r_uidnext - 1;
-       if ($l_uid != 1 && $l_uid > $r_uid) {
+       if ($l_uid > $r_uid) {
                return "E: $url local UID exceeds remote ($l_uid > $r_uid)\n".
                        "E: $url strangely, UIDVALIDLITY matches ($l_uidval)\n";
        }
        return if $l_uid >= $r_uid; # nothing to do
+       $l_uid ||= 1;
 
        warn "# $url fetching UID $l_uid:$r_uid\n" unless $self->{quiet};
        $mic->Uid(1); # the default, we hope