textinput/peninputarc/src/peninputclient/penclientimpl.cpp
branchRCL_3
changeset 3 f5a1e66df979
parent 0 eb1f2e154e89
child 5 a47de9135b21
--- a/textinput/peninputarc/src/peninputclient/penclientimpl.cpp	Tue Feb 02 01:02:04 2010 +0200
+++ b/textinput/peninputarc/src/peninputclient/penclientimpl.cpp	Fri Feb 19 23:09:27 2010 +0200
@@ -123,8 +123,11 @@
     if(client && client->IsValid())
         {
         RPeninputServerImpl* server = client->GetSingletonServer();
-        TInt err = server->ServerReady() ? KErrNone : KErrLaunchingServer;  
-        User::RequestComplete(aStatus,err);
+        TInt err = server->ServerReady() ? KErrNone : KErrLaunchingServer;
+        if ( aStatus )
+            {
+            User::RequestComplete( aStatus, err );
+            }
         return server;
         }
         
@@ -253,12 +256,13 @@
             return KErrNone;
             }
         }
-    else //server alreay there
+    else if ( error == KErrNone )//server alreay there
         {
+        iServerReady = ETrue;
+        AddObserver();	
+        
         if(aStatus)
-            OnServerStarted(KErrNone);
-        else
-            AddObserver();
+        	User::RequestComplete(iPendingRequest, error);
         }
     return error;
     }
@@ -1527,17 +1531,17 @@
     if(KErrNone == aErr)
         {
         iServerReady = ETrue;
-        }
-    
-    //create session
-     
-     TInt error = CreateSession( KPeninputServerName,
+        
+        //create session
+        aErr = CreateSession( KPeninputServerName,
                            Version(),
                            KDefaultMessageSlots,EIpcSession_Sharable);
 
-    if(KErrNone == error)
-        AddObserver();
-   
+	    if(KErrNone == aErr)
+	    	{
+	        AddObserver();
+	    	}
+        }
     User::RequestComplete(iPendingRequest, aErr);
     }