[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    Re: KMail blocks just before checking POP3 mailboxes
From:       Ingo =?iso-8859-1?q?Kl=F6cker?= <kloecker () kde ! org>
Date:       2004-06-02 23:30:50
Message-ID: 200406030130.53893 () erwin ! ingo-kloecker ! de
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


On Wednesday 02 June 2004 06:18, Don Sanders wrote:
> On Wednesday 02 June 2004 06:13, Ingo Klöcker wrote:
> > With the current version this shouldn't happen anymore because the
> > UIDs of all messages which have been deleted from the server are
> > removed from the seenUidList before the list is written to the file
> > for the next check. So the seenUidList will be empty if no message
> > was left on the server.
>
> Ok. And this new version still robustly handles the case of the pop
> server erroneously reporting an empty uid list when leaving mail on
> the server? That is if the server erroneously reports an empty uid
> list then this won't result in all mail being downloaded on the
> server again on the subsequent check (when the old uids reappear)?

I don't think so. In this case the code in the following if-statement 
will be executed because
- mLeaveOnServer is true (leaving mail on the server)
- mUidForIdMap will be empty (because the server didn't report any UIDs)
- mUidsOfNextSeenMsgsDict will be empty (for the same reason; I think 
this is actually obsolete because it will always be empty if 
mUidForIdMap is empty)
- idsOfMsgs is not empty (because there are messages on the server)
    if ( mLeaveOnServer && mUidForIdMap.isEmpty() &&
         mUidsOfNextSeenMsgsDict.isEmpty() && !idsOfMsgs.isEmpty() ) {
      KMessageBox::sorry(0, i18n("Your POP3 server does not support the 
UIDL "
      "command: this command is required to determine, in a reliable 
way, "
      "which of the mails on the server KMail has already seen before;
\n"
      "the feature to leave the mails on the server will therefore not "
      "work properly."));
      // An attempt to work around buggy pop servers, these seem to be 
popular.
      mUidsOfNextSeenMsgsDict = mUidsOfSeenMsgsDict;
    }

So in this case the old list of seen UIDs will be used.

> > Moreover the list of old seen msgs is now only copied if the user
> > leaves mail on the server and if the server really didn't send any
> > UIDs although there are new messages.
>
> Don't quite follow this part, hence my above question.

See above.

Regards,
Ingo

[Attachment #5 (application/pgp-signature)]

_______________________________________________
KMail developers mailing list
KMail-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmail-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic