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

List:       kde-commits
Subject:    KDE/kdepimlibs/mailtransport
From:       Olivier Trichet <nive () nivalis ! org>
Date:       2010-09-08 19:13:40
Message-ID: 20100908191340.2384EAC857 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1173151 by otrichet:

Fix an infinite loop retrieving the password of a mail transport when \
TransportManager::schedule() is used and the stored password is empty.

review: http://reviewboard.kde.org/r/2579/

 M  +1 -2      transport.cpp  
 M  +3 -2      transportmanager.cpp  


--- trunk/KDE/kdepimlibs/mailtransport/transport.cpp #1173150:1173151
@@ -79,8 +79,7 @@
 {
   if ( !d->passwordLoaded && requiresAuthentication() && storePassword() &&
        d->password.isEmpty() ) {
-    TransportManager::self()->loadPasswords();
-    d->password = TransportManager::self()->transportById( id(), false \
)->password(); +    readPassword();
   }
   return d->password;
 }
--- trunk/KDE/kdepimlibs/mailtransport/transportmanager.cpp #1173150:1173151
@@ -635,10 +635,11 @@
   }
 
   // flush the wallet queue
-  foreach ( TransportJob *job, d->walletQueue ) {
+  const QList<TransportJob*> copy = d->walletQueue;
+  d->walletQueue.clear();
+  foreach ( TransportJob *job, copy ) {
     job->start();
   }
-  d->walletQueue.clear();
 
   emit passwordsChanged();
 }


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

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