metadataengine/client/src/mdesessionimpl.cpp
branchRCL_3
changeset 19 b73252188534
parent 13 4a4892eec172
equal deleted inserted replaced
18:63c982fb92f2 19:b73252188534
   239 	{
   239 	{
   240     // No session errors should be sent during deconstruction to avoid possible double deletion
   240     // No session errors should be sent during deconstruction to avoid possible double deletion
   241     iSessionObserver = NULL;
   241     iSessionObserver = NULL;
   242 
   242 
   243 	delete iSchemaBuffer;
   243 	delete iSchemaBuffer;
       
   244 	iSchemaBuffer = NULL;
   244 
   245 
   245 	iNotifiers.ResetAndDestroy();
   246 	iNotifiers.ResetAndDestroy();
   246 	iNotifiers.Close();
   247 	iNotifiers.Close();
   247 
   248 
   248 	iSession.Shutdown();
   249 	iSession.Shutdown();
   252 	
   253 	
   253 	iNamespaceDefs.ResetAndDestroy();
   254 	iNamespaceDefs.ResetAndDestroy();
   254 	iNamespaceDefs.Close();
   255 	iNamespaceDefs.Close();
   255 	
   256 	
   256 	delete iSessionStartupAO;
   257 	delete iSessionStartupAO;
       
   258 	iSessionStartupAO = NULL;
   257 		
   259 		
   258 	delete iAsyncHandler;
   260 	delete iAsyncHandler;
       
   261 	iAsyncHandler = NULL;
   259 	}
   262 	}
   260 
   263 
   261 void CMdESessionImpl::ConstructL()
   264 void CMdESessionImpl::ConstructL()
   262 	{
   265 	{
   263     iSessionStartupAO = CMdESessionStartupAO::NewL( *this, iSession );
   266     iSessionStartupAO = CMdESessionStartupAO::NewL( *this, iSession );
   357     	CMdEObject* obj = aObjects[i];
   360     	CMdEObject* obj = aObjects[i];
   358     	if ( !obj->OpenForModifications() )
   361     	if ( !obj->OpenForModifications() )
   359     		{
   362     		{
   360     		User::Leave( KErrMdENotLocked );
   363     		User::Leave( KErrMdENotLocked );
   361     		}
   364     		}
   362 		items.Append( obj );
   365     	
       
   366     	items.AppendL( obj );
   363     	}
   367     	}
   364 
   368 
   365     UpdateItemsL(items);
   369     UpdateItemsL(items);
   366 
   370 
   367     items.Reset();
   371     items.Reset();
   534 		{
   538 		{
   535 		CleanupStack::Pop( schemaBuffer );
   539 		CleanupStack::Pop( schemaBuffer );
   536 		}
   540 		}
   537 
   541 
   538 	delete iSchemaBuffer;
   542 	delete iSchemaBuffer;
       
   543 	iSchemaBuffer = NULL;
   539 
   544 
   540 	iSchemaBuffer = schemaBuffer;
   545 	iSchemaBuffer = schemaBuffer;
   541 	
   546 	
   542 	iNamespaceDefs.ResetAndDestroy();
   547 	iNamespaceDefs.ResetAndDestroy();
   543 	
   548 	
  2692 
  2697 
  2693 void CMdESessionImpl::NotifierInError( CMdENotifierAO* aNotifier )
  2698 void CMdESessionImpl::NotifierInError( CMdENotifierAO* aNotifier )
  2694     {
  2699     {
  2695     const TInt index = iNotifiers.Find( aNotifier );
  2700     const TInt index = iNotifiers.Find( aNotifier );
  2696     delete aNotifier;
  2701     delete aNotifier;
       
  2702     aNotifier = NULL;
  2697     iNotifiers.Remove( index );
  2703     iNotifiers.Remove( index );
  2698     }
  2704     }
  2699 
  2705 
  2700 void CMdESessionImpl::ImportSchemaL( const TDesC& aFileName )
  2706 void CMdESessionImpl::ImportSchemaL( const TDesC& aFileName )
  2701     {
  2707     {