messagingfw/msgsrvnstore/server/src/MSVDELET.CPP
branchRCL_3
changeset 22 d2c4c66342f3
parent 0 8e480a14352b
child 23 d51193d814ea
--- a/messagingfw/msgsrvnstore/server/src/MSVDELET.CPP	Thu Aug 19 10:24:00 2010 +0300
+++ b/messagingfw/msgsrvnstore/server/src/MSVDELET.CPP	Tue Aug 31 15:41:11 2010 +0300
@@ -310,6 +310,11 @@
 	CDir* dir=NULL;
 	TBool partiallyDeleted=EFalse;
 	TInt error = iServer.GetFileDirectoryListing(id, filename, dir);
+	if(dir)
+        {
+	    CleanupStack::PushL(dir);
+        }
+	
 	if (error==KErrNone)
 		{
 		User::LeaveIfError(iServer.FileSession().SetSessionPath(filename));
@@ -386,7 +391,10 @@
 	// deletion was successful
 	iDeletedEntries->AppendL(id); // will not leave, space has been reserved
 	iMovedEntries->AppendL(id);   // will not leave, space has been reserved
-	delete dir;
+	if(dir)
+        {
+	    CleanupStack::PopAndDestroy(dir);
+        }
 	return;
 
 failed:
@@ -424,7 +432,11 @@
 	// we have failed, move onto next state
 	iState = iPCSynced ? EIndexIndividually : EIndex;
 	iError=error;
-	delete dir;
+	if(dir)
+        {
+	    CleanupStack::PopAndDestroy(dir);
+        }
+	    
 	}