metadataengine/server/src/mdsmanipulationengine.cpp
branchRCL_3
changeset 19 b73252188534
parent 13 4a4892eec172
child 20 f23c07ec56e2
--- a/metadataengine/server/src/mdsmanipulationengine.cpp	Thu Jul 15 19:07:24 2010 +0300
+++ b/metadataengine/server/src/mdsmanipulationengine.cpp	Thu Aug 19 10:20:41 2010 +0300
@@ -93,8 +93,10 @@
 CMdSManipulationEngine::~CMdSManipulationEngine()
     {
     delete iManipulate;
+    iManipulate = NULL;
     
     delete iGarbageCollector;
+    iGarbageCollector = NULL;
     }
 
 // ---------------------------------------------------------------------------
@@ -153,7 +155,7 @@
         CleanupClosePushL(objStmt);
 		
         RMdSTransaction transaction( connection );
-        CleanupClosePushL(transaction);
+        CleanupClosePushL (transaction );
         const TInt beginError( transaction.Error() );
         if( beginError != KErrNone )
             {
@@ -1072,13 +1074,19 @@
     CMdSSqLiteConnection& connection = MMdSDbConnectionPool::GetDefaultDBL();
     RMdSTransaction transaction( connection );
     CleanupClosePushL( transaction );
-    User::LeaveIfError( transaction.Error() );
+    const TInt beginError( transaction.Error() );
+    if( beginError != KErrNone )
+        {
+        CleanupStack::PopAndDestroy( &transaction );
+        }
     
     iManipulate->CheckMassStorageMediaIdL( aMediaId );
     
-    transaction.CommitL();
-
-    CleanupStack::PopAndDestroy( &transaction );
+    if( beginError == KErrNone )
+        {
+        transaction.CommitL();
+        CleanupStack::PopAndDestroy( &transaction );
+        }
     }
 
 void CMdSManipulationEngine::AddRelationDefL( TDefId aNamespaceId, const TDesC& aRelationDefName )