ipsservices/ipssosplugin/src/ipsplgpop3connectop.cpp
changeset 3 a4d6f1ea0416
parent 0 8466d47a6819
child 4 e7aa27f58ae1
--- a/ipsservices/ipssosplugin/src/ipsplgpop3connectop.cpp	Mon Jan 18 20:08:26 2010 +0200
+++ b/ipsservices/ipssosplugin/src/ipsplgpop3connectop.cpp	Tue Jan 26 11:45:42 2010 +0200
@@ -285,7 +285,8 @@
     iPopulateLimit( KIpsPlgPop3PopulateLimitInitValue ),
     iForcePopulate( aForcePopulate ),
     iSelection( NULL ),
-    iEventHandler( aEventHandler )
+    iEventHandler( aEventHandler ),
+    iAlreadyConnected( EFalse )
     {
     iService = aServiceId; 
     }
@@ -339,6 +340,7 @@
     if ( tentry.Connected() )
         {      
         iState = EConnected; 
+        iAlreadyConnected = ETrue;
         SetActive();
         CompleteThis();
         }
@@ -443,6 +445,14 @@
 TInt CIpsPlgPop3ConnectOp::GetOperationErrorCodeL( )
     {
     FUNC_LOG;
+    
+    if ( iAlreadyConnected )
+        {
+        // Connected state was set in CIpsPlgPop3ConnectOp::ConstructL()
+        // so iOperation is null
+        return KErrNone;
+        }
+        
     if ( !iOperation )
         {
         return KErrNotFound;