From dadd9240d7dde2e3fb3bd2395cf82845b523bf7f Mon Sep 17 00:00:00 2001 From: Till Adam Date: Sat, 15 Nov 2003 22:00:34 +0000 Subject: [PATCH] Make sure quiet() is reset in all error paths. If this is not ensured, the newly arrived mail headers will be added to the local store but the headers list not updated as that happens according to the following scheme: o set folder quiet++ o get a bunch of headers and add them to the store without updating o when the last mail comes in set folder quiet-- o quiet == 0 and as a result of that emit the folder's changed signal which updates the headers Now if in some error path the quiet-- doesn't happen, quiet never becomes 0 again in that folder and therefor the headers are never updated whether there are new mails or not. I hope this is the last codepath where it is lacking. If so, it should fix #64210. This being an error path would explain why it is so elusive. I saw this today for the first time having left kmail running across a disconnect of my internet connection. CCMAIL: 64210@bugs.kde.org svn path=/trunk/kdepim/; revision=267320 --- kmfolderimap.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/kmfolderimap.cpp b/kmfolderimap.cpp index 875d82374..3f08befd2 100644 --- a/kmfolderimap.cpp +++ b/kmfolderimap.cpp @@ -757,6 +757,7 @@ void KMFolderImap::slotListFolderResult(KIO::Job * job) { mAccount->slotSlaveError( mAccount->slave(), job->error(), job->errorText() ); + quiet( false ); emit folderComplete(this, FALSE); mAccount->removeJob(it); mAccount->displayProgress();