diff -r 04da681812a9 -r 457cd4423b8c omadrm/drmengine/server/src/DRMRightsClient.cpp --- a/omadrm/drmengine/server/src/DRMRightsClient.cpp Tue Apr 27 16:56:11 2010 +0300 +++ b/omadrm/drmengine/server/src/DRMRightsClient.cpp Tue May 11 16:28:38 2010 +0300 @@ -19,6 +19,7 @@ // INCLUDE FILES #include #include +#include #include "DRMRightsClient.h" #include "DRMEngineClientServer.h" #include "DrmPermission.h" @@ -157,11 +158,23 @@ } #ifdef __DRM_FULL - // startup code, if it starts it starts if not it will be tried again. - RDRMHelper helper; - TInt ignore = helper.Connect(); // Start HelperServer - helper.Close(); -#endif + + TRAP( ret, FeatureManager::InitializeLibL() ); + + if ( !ret && FeatureManager::FeatureSupported( KFeatureIdFfOmadrm1FullSupport ) ) + { + // startup code, if it starts it starts if not it will be tried again. + RDRMHelper helper; + TInt ignore = helper.Connect(); // Start HelperServer + helper.Close(); + } + + if ( !ret ) + { + FeatureManager::UnInitializeLib(); + } + +#endif DRMLOG2( _L( "RDRMRightsClient::Connect(): Result: %d" ), ret );