From kde-commits Thu Jul 10 08:40:10 2008 From: David Faure Date: Thu, 10 Jul 2008 08:40:10 +0000 To: kde-commits Subject: Re: branches/KDE/3.5/kdepim Message-Id: <200807101040.10963.dfaure () kdab ! net> X-MARC-Message: https://marc.info/?l=kde-commits&m=121567926726462 On Thursday 10 July 2008, Pradeepto Bhattacharya wrote: > SVN commit 830307 by pradeepto: > > -- I could reproduce this bug on 3.5 branch as well. > -- Details : https://www.intevation.de/roundup/kolab/issue2607 > > Merged revisions 830100 via svnmerge from > svn+ssh://pradeepto@svn.kde.org/home/kde/branches/kdepim/enterprise/kdepim > > ........ > r830100 | pradeepto | 2008-07-10 00:29:32 +0530 (Thu, 10 Jul 2008) | 4 lines > > -- kolab/issue2607 sync loop after deactivation of autosync. > -- Check if the mail-check-interval changed to 0 / was disabled by the user and if yes, de-install the timer so that it doesn't trigger off > and start a sync again and again. > ........ > > > _M . (directory) > M +6 -0 kmail/accountmanager.cpp > M +10 -0 kmail/kmaccount.cpp > M +1 -0 kmail/kmaccount.h > > > ** branches/KDE/3.5/kdepim #property svnmerge-integrated > - /branches/kdepim/enterprise/kdepim:1-767022,767033,767233-767554,767556,767558-767946,767948-769318,769320-769354,769356-771105,771107-771251,771253-772311,772313-772316,772318-775194,775196-775202,775204,775207-775211,775213-778001,778003-778004,778007,778010-778011,778013-778029,778031-778727,778729-779448,779450-779482,779484-779505,779507-779852,779854-779994,782647-783127,783129-783243,783245,783248-783477,783479-783847,784547,787827,817568,817604,817710-818288,818312-819076,819078-820073,820075-821035,821037-821124,821126-821378,821380-821648,821650-821813,821815-821835,821837-822268,822270-823864,823866-824217,824219-824277,824279-824285,824287-824288,824290-824805,824807-825075,825077-825083,825085-826354,826356-827491 > + /branches/kdepim/enterprise/kdepim:1-767022,767033,767233-767554,767556,767558-767946,767948-769318,769320-769354,769356-771105,771107-771251,771253-772311,772313-772316,772318-775194,775196-775202,775204,775207-775211,775213-778001,778003-778004,778007,778010-778011,778013-778029,778031-778727,778729-779448,779450-779482,779484-779505,779507-779852,779854-779994,782647-783127,783129-783243,783245,783248-783477,783479-783847,784547,787827,817568,817604,817710-818288,818312-819076,819078-820073,820075-821035,821037-821124,821126-821378,821380-821648,821650-821813,821815-821835,821837-822268,822270-823864,823866-824217,824219-824277,824279-824285,824287-824288,824290-824805,824807-825075,825077-825083,825085-826354,826356-827491,830100 > --- branches/KDE/3.5/kdepim/kmail/accountmanager.cpp #830306:830307 > @@ -113,6 +113,12 @@ > mNewMailArrived = false; > mInteractive = interactive; > > + // if sync has been requested by the user then check if check-interval was disabled by user, if yes, then > + // de-install the timer > + // Safe guard against an infinite sync loop (kolab/issue2607) > + if ( mInteractive ) > + account->readTimerConfig(); > + > // queue the account > mAcctTodo.append(account); > > --- branches/KDE/3.5/kdepim/kmail/kmaccount.cpp #830306:830307 > @@ -163,6 +163,16 @@ > installTimer(); > } > > +void KMAccount::readTimerConfig() > +{ > + // Re-reads and checks check-interval value and deinstalls timer incase check-interval > + // for mail check is disabled. > + // Or else, the mail sync goes into a infinite loop (kolab/issue2607) > + if (mInterval == 0) > + deinstallTimer(); > + else > + installTimer(); > +} > > //----------------------------------------------------------------------------- > void KMAccount::writeConfig(KConfig& config) > --- branches/KDE/3.5/kdepim/kmail/kmaccount.h #830306:830307 > @@ -142,6 +142,7 @@ > * already properly set by the caller. > */ > virtual void readConfig(KConfig& config); > + virtual void readTimerConfig(); Why virtual, if it's only implemented in this class? -- David Faure, faure@kde.org, dfaure@kdab.net KDE/KOffice developer, Qt consultancy projects Klarälvdalens Datakonsult AB, Platform-independent software solutions