commsconfig/cscengine/src/cscengservicepluginhandler.cpp
branchRCL_3
changeset 12 876a3df1f464
parent 0 a4daefaec16c
--- a/commsconfig/cscengine/src/cscengservicepluginhandler.cpp	Wed Apr 14 15:49:55 2010 +0300
+++ b/commsconfig/cscengine/src/cscengservicepluginhandler.cpp	Tue Apr 27 16:28:03 2010 +0300
@@ -629,8 +629,23 @@
             }
         
         CleanupStack::PopAndDestroy( &serviceIds );
-        
-        iServicePluginInfoArray.Append( pluginInfo );
+
+        // Check if the plugin is already in array before appending.
+        TBool found( EFalse );
+        for ( TInt counter( 0 ); 
+            counter < iServicePluginInfoArray.Count();
+            counter++ )
+            {
+            if ( iServicePluginInfoArray[counter].iPluginsUid == 
+                pluginInfo.iPluginsUid )
+                {
+                found = ETrue;
+                }
+            }
+        if ( !found )
+            {
+            iServicePluginInfoArray.Append( pluginInfo );
+            }
         }
         
     CSCENGDEBUG( "CCSCEngServicePluginHandler::SetPluginInitInfoL - end" );