--- a/persistentstorage/sql/OsLayer/os_symbian.cpp Wed Aug 18 11:30:17 2010 +0300
+++ b/persistentstorage/sql/OsLayer/os_symbian.cpp Thu Sep 02 22:18:45 2010 +0300
@@ -1604,6 +1604,14 @@
(void)parse.AddDir(KTempFileDir);//this call can't fail
__FS_CALL(EFsOpFileCreateTemp, 0);
TInt err = aDbFile.iFileBuf.Temp(osLayerData.iFs, parse.FullName(), parse.FileName(), EFileRead|EFileWrite|EDeleteOnClose);
+ if(err == KErrPathNotFound)
+ {
+ err = osLayerData.iFs.MkDirAll(parse.DriveAndPath());
+ if(err == KErrNone)
+ {
+ err = aDbFile.iFileBuf.Temp(osLayerData.iFs, parse.FullName(), parse.FileName(), EFileRead|EFileWrite|EDeleteOnClose);
+ }
+ }
if(err == KErrNone)
{
TInt recReadBufSize = -1;