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

List:       kde-commits
Subject:    [kdepim-runtime] 9fd3827: Don't attempt to log out if the session is
From:       Volker Krause <vkrause () kde ! org>
Date:       2011-01-06 15:15:48
Message-ID: 20110106151548.BC7FDA6090 () git ! kde ! org
[Download RAW message or body]

commit 9fd38279297977f83a77351ba195d2741af1cf55
branch master
Author: Volker Krause <vkrause@kde.org>
Date:   Thu Jan 6 16:15:55 2011 +0100

    Don't attempt to log out if the session is not connected.
    
    With the job timeout disabled, the logout job would hang indefinitely
    and thus never delete the Session object. This way we keep accumulating
    dead session threads.

diff --git a/resources/imap/sessionpool.cpp b/resources/imap/sessionpool.cpp
index 580bd2a..f541459 100644
--- a/resources/imap/sessionpool.cpp
+++ b/resources/imap/sessionpool.cpp
@@ -178,7 +178,7 @@ void SessionPool::killSession( KIMAP::Session *session, SessionTermination termi
   QObject::disconnect( session, SIGNAL(connectionLost()),
                        this, SLOT(onConnectionLost()) );
 
-  if ( termination==LogoutSession ) {
+  if ( session->state() != KIMAP::Session::Disconnected && termination == LogoutSession ) {
     KIMAP::LogoutJob *logout = new KIMAP::LogoutJob( session );
     QObject::connect( logout, SIGNAL( result( KJob* ) ),
                       session, SLOT( deleteLater() ) );
[prev in list] [next in list] [prev in thread] [next in thread] 

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