equal
deleted
inserted
replaced
967 |
967 |
968 ASSERT(aFsOp == EFsFileWrite || aFsOp == EFsFileWriteDirty); |
968 ASSERT(aFsOp == EFsFileWrite || aFsOp == EFsFileWriteDirty); |
969 if(aFsOp == EFsFileWrite) |
969 if(aFsOp == EFsFileWrite) |
970 {//-- this call is originated from explicit file write operation. Set 'Archive' attribute and new file time. |
970 {//-- this call is originated from explicit file write operation. Set 'Archive' attribute and new file time. |
971 aFile->SetArchiveAttribute(); //-- it will also set KEntryAttModified |
971 aFile->SetArchiveAttribute(); //-- it will also set KEntryAttModified |
972 } |
|
973 else |
|
974 {//-- don't touch data and attributes if it is cache flushing dirty data |
|
975 aFile->iAtt |= KEntryAttModified; |
|
976 } |
972 } |
977 |
973 |
978 |
974 |
979 return KErrNone; |
975 return KErrNone; |
980 } |
976 } |
1585 if((!(share->IsFileModeBig())) && ((TUint64)size > KMaxLegacyFileSize)) |
1581 if((!(share->IsFileModeBig())) && ((TUint64)size > KMaxLegacyFileSize)) |
1586 return (KErrTooBig); |
1582 return (KErrTooBig); |
1587 |
1583 |
1588 CFileCB& file=share->File(); |
1584 CFileCB& file=share->File(); |
1589 |
1585 |
1590 // flush the write cache |
|
1591 CFileCache* fileCache = share->File().FileCache(); |
|
1592 if (fileCache && (r = fileCache->FlushDirty(aRequest)) != CFsRequest::EReqActionComplete) |
|
1593 return r; |
|
1594 |
|
1595 if (size==file.Size64()) |
1586 if (size==file.Size64()) |
|
1587 { |
|
1588 file.SetCachedSize64(size); // Ensure the cache size doesn't exceeed the physical size |
1596 return(KErrNone); |
1589 return(KErrNone); |
|
1590 } |
1597 |
1591 |
1598 TBool fileHasGrown = size > file.Size64(); |
1592 TBool fileHasGrown = size > file.Size64(); |
1599 if (fileHasGrown) |
1593 if (fileHasGrown) |
1600 { |
1594 { |
1601 r = CheckDiskSpace(size - file.Size64(), aRequest); |
1595 r = CheckDiskSpace(size - file.Size64(), aRequest); |