equal
deleted
inserted
replaced
506 if ((err != KErrNone) && (err != KErrAlreadyExists)) |
506 if ((err != KErrNone) && (err != KErrAlreadyExists)) |
507 { |
507 { |
508 __LOG1("CBufferFileReader::WriteToFile() - making directory resulted in fatal error: %d", err); |
508 __LOG1("CBufferFileReader::WriteToFile() - making directory resulted in fatal error: %d", err); |
509 User::Leave(err); |
509 User::Leave(err); |
510 } // if |
510 } // if |
511 |
511 |
512 |
512 TEntry entry; |
|
513 TBool isReadOnly = EFalse; |
|
514 err = iFs.Entry(iFileName, entry); |
|
515 if(KErrNone == err) |
|
516 { |
|
517 if(entry.iAtt & KEntryAttReadOnly) |
|
518 { |
|
519 isReadOnly = ETrue; |
|
520 entry.iAtt &= ~KEntryAttReadOnly; |
|
521 iFs.SetAtt(iFileName, entry.iAtt, ~entry.iAtt); |
|
522 } |
|
523 } |
|
524 |
513 err = iFileHandle.Replace(iFs, iFileName, EFileWrite); |
525 err = iFileHandle.Replace(iFs, iFileName, EFileWrite); |
514 __LOG1("CBufferFileReader::WriteToFile() - replacing file returned err: %d", err); |
526 __LOG1("CBufferFileReader::WriteToFile() - replacing file returned err: %d", err); |
515 User::LeaveIfError( err ); |
527 User::LeaveIfError( err ); |
|
528 |
|
529 if(isReadOnly) |
|
530 { |
|
531 entry.iAtt |= KEntryAttReadOnly; |
|
532 iFs.SetAtt(iFileName, entry.iAtt, ~entry.iAtt); |
|
533 } |
516 |
534 |
517 iFileOpen = ETrue; |
535 iFileOpen = ETrue; |
518 __LOG("CBufferFileReader::RecreateFileL() - END"); |
536 __LOG("CBufferFileReader::RecreateFileL() - END"); |
519 } |
537 } |
520 |
538 |