accessoryservices/remotecontrolfw/server/src/session.cpp
branchRCL_3
changeset 81 24127ea5a236
parent 61 8cb079868133
--- a/accessoryservices/remotecontrolfw/server/src/session.cpp	Wed Sep 15 13:36:47 2010 +0300
+++ b/accessoryservices/remotecontrolfw/server/src/session.cpp	Wed Oct 13 15:58:37 2010 +0300
@@ -1351,6 +1351,7 @@
 	if ( err == KErrNone )
 		{
 		iServer.SetConnectionHistoryPointer(Id());
+		iInGetConnectionsProcedure = ETrue;
 		}
 	CompleteClient(aMessage, err);
 	}
@@ -1368,6 +1369,8 @@
 		return;
 		}
 
+	iInGetConnectionsProcedure = EFalse;
+
 	// Get the array of connections at the point in the history we're 
 	// interested in and write it back to the client. NB This is not 
 	// necessarily the Last item in the history but the item that we were 
@@ -1569,13 +1572,17 @@
 void CRemConSession::ConnectionsChanged()
 	{
 	LOG_FUNC;
-
+	
+	LOG1(_L("\tiInGetConnectionsProcedure = %d"), iInGetConnectionsProcedure);
+	// Only update the connections history pointer if we're not in the middle 
+	// of a 'GetConnections' procedure. 
+	if ( !iInGetConnectionsProcedure )
+		{
+		iServer.SetConnectionHistoryPointer(Id());
+		}
 	LOG1(_L("\tiNotifyConnectionsChangeMsg.Handle = %d"), iNotifyConnectionsChangeMsg.Handle());
 	if ( iNotifyConnectionsChangeMsg.Handle() )
 		{
-		// Set the connection history pointer to point to the latest item and then complete the 
-		// NotifyConnectionChange request of the client.
-		iServer.SetConnectionHistoryPointer(Id());
 		CompleteClient(iNotifyConnectionsChangeMsg, KErrNone);
 		}
 	}