contentpublishingsrv/contentpublishingutils/pluginvalidator/src/charvesterpluginvalidator.cpp
branchRCL_3
changeset 110 2c7f27287390
parent 101 9e077f9a342c
--- a/contentpublishingsrv/contentpublishingutils/pluginvalidator/src/charvesterpluginvalidator.cpp	Mon Jun 21 16:00:38 2010 +0300
+++ b/contentpublishingsrv/contentpublishingutils/pluginvalidator/src/charvesterpluginvalidator.cpp	Thu Jul 15 18:59:18 2010 +0300
@@ -31,6 +31,8 @@
     0x10282E5A
     };
 
+const TInt KADatFactorySettingsServerPluginUid(0x102830EF);
+
 // ======== MEMBER FUNCTIONS ========
 
 // ----------------------------------------------------------------------------
@@ -167,18 +169,30 @@
 void CHarvesterPluginValidator::UpdatePluginsL()
     {
     // set property value to 1 (which means "in progress")
-    iInProgressProperty.Set(TUid::Uid(KHarvesterUid), KInProgressPropertyKey,
-            1);
+    iInProgressProperty.Set(TUid::Uid(KHarvesterUid), KInProgressPropertyKey, 1);
+    CContentHarvesterPlugin* plugin = NULL;
+    CContentHarvesterPlugin* fsplugin =
+            static_cast<CContentHarvesterPlugin*> (GetImplementation(
+                    TUid::Uid(KADatFactorySettingsServerPluginUid)));
+
+	if (fsplugin)
+        {
+        iBlacklist->AppendL(TUid::Uid(KADatFactorySettingsServerPluginUid));
+            TRAP_IGNORE( fsplugin->UpdateL() );
+        iBlacklist->RemoveL(TUid::Uid(KADatFactorySettingsServerPluginUid));
+        }
     for (TInt i = 0; i < iPluginArray.Count(); i++)
         {
-        //first we append UID to the blacklist
-        iBlacklist->AppendL(iPluginArray[i].iImplementationUid);
-
-        TRAP_IGNORE( static_cast<CContentHarvesterPlugin*>
-                    ( iPluginArray[i].iPlugin )->UpdateL() );
-
-        //no panic during update so we can remove UID from blacklist
-        iBlacklist->RemoveL(iPluginArray[i].iImplementationUid);
+        plugin
+                = static_cast<CContentHarvesterPlugin*> (iPluginArray[i].iPlugin);
+        if (plugin != fsplugin)
+            {
+            //first we append UID to the blacklist
+            iBlacklist->AppendL(iPluginArray[i].iImplementationUid);
+                TRAP_IGNORE( plugin->UpdateL() );
+            //no panic during update so we can remove UID from blacklist
+            iBlacklist->RemoveL(iPluginArray[i].iImplementationUid);
+            }
         }
     // set property value to 0 (which means "finished")
     iInProgressProperty.Set(TUid::Uid(KHarvesterUid), KInProgressPropertyKey,