diff -r 4d5e9526124e -r a564f66a2339 omads/omadsappui/AspSyncUtil/src/AspPreSyncPluginInterface.cpp --- a/omads/omadsappui/AspSyncUtil/src/AspPreSyncPluginInterface.cpp Wed Mar 31 21:14:07 2010 +0300 +++ b/omads/omadsappui/AspSyncUtil/src/AspPreSyncPluginInterface.cpp Wed Apr 14 15:45:46 2010 +0300 @@ -17,6 +17,7 @@ // INCLUDE FILES +#include #include "AspPreSyncPluginInterface.h" #include "CPreSyncPlugin.h" @@ -96,15 +97,18 @@ CPreSyncPlugin* syncPlugin = NULL; CPreSyncPlugin* defaultSyncPlugin = NULL; + CleanupRImplInfoPtrArrayPushL( &infoArray ); + // Get list of all implementations TRAPD(error, ListAllImplementationsL( infoArray )); if (error != KErrNone) { + CleanupStack::PopAndDestroy( &infoArray ); return NULL; } // Instantiate plugins for all impUIds by calling - // InstantiatePlugInFromImpUidLC + // InstantiatePlugInFromImpUidL for ( TInt i=0; iSetProfile(aProfileId); + defaultSyncPlugin = InstantiatePlugInFromImpUidL( impUid ); + defaultSyncPlugin->SetProfile(aProfileId); } else { - syncPlugin = InstantiatePlugInFromImpUidLC( impUid ); + syncPlugin = InstantiatePlugInFromImpUidL( impUid ); syncPlugin->SetProfile(aProfileId); if(syncPlugin->IsSupported()) { @@ -130,23 +134,25 @@ } else { - CleanupStack::PopAndDestroy(syncPlugin); + delete syncPlugin; } } } - infoArray.ResetAndDestroy(); + CleanupStack::PopAndDestroy( &infoArray ); if(bHandleSync) { //delete defaultSyncPlugin; if(defaultSyncPlugin != NULL) { - CleanupStack::PopAndDestroy(defaultSyncPlugin); + delete defaultSyncPlugin; } + CleanupStack::PushL(syncPlugin); return syncPlugin; } else - { + { + CleanupStack::PushL(defaultSyncPlugin); return defaultSyncPlugin; } } @@ -161,14 +167,13 @@ } // ---------------------------------------------------------------------------- -// CPreSyncPluginInterface::InstantiatePlugInFromImpUidLC +// CPreSyncPluginInterface::InstantiatePlugInFromImpUidL // Instantiates plugin // ---------------------------------------------------------------------------- -CPreSyncPlugin* CPreSyncPluginInterface::InstantiatePlugInFromImpUidLC( const TUid& aImpUid ) +CPreSyncPlugin* CPreSyncPluginInterface::InstantiatePlugInFromImpUidL( const TUid& aImpUid ) { // REComSession CPreSyncPlugin *preSyncPlugin = CPreSyncPlugin::NewL(aImpUid); - CleanupStack::PushL(preSyncPlugin); return preSyncPlugin; }