diff -r 61f466445ae5 -r 320ec5cd0227 messagingfw/msgsrvnstore/server/src/TMsvServerStoreManager.cpp --- a/messagingfw/msgsrvnstore/server/src/TMsvServerStoreManager.cpp Tue Jul 06 14:48:25 2010 +0300 +++ b/messagingfw/msgsrvnstore/server/src/TMsvServerStoreManager.cpp Wed Aug 18 10:15:32 2010 +0300 @@ -381,11 +381,17 @@ GetStoreFileName(aEntryId,tempFilePathAndName); tempFilePathAndName.Append(KMsvUtilsNewExtension); - TInt error = iFs->MkDirAll(tempFilePathAndName); - if(error == KErrNone || error == KErrAlreadyExists) - error = aFile.Replace(*iFs,tempFilePathAndName,EFileShareExclusive|EFileWrite); - + + TInt error= aFile.Replace(*iFs,tempFilePathAndName,EFileShareExclusive|EFileWrite); + if (error==KErrPathNotFound) + { + //only create directory if not found + error=iFs->MkDirAll(tempFilePathAndName); + if (error==KErrNone) + error=aFile.Replace(*iFs,tempFilePathAndName,EFileShareExclusive|EFileWrite); + } User::LeaveIfError(error); + } void TMsvServerStoreManager::ReplaceFileStoreL(TMsvId aEntryId)