equal
deleted
inserted
replaced
443 } |
443 } |
444 |
444 |
445 TFileName filenameold; |
445 TFileName filenameold; |
446 aFileOld.FullName( filenameold ); |
446 aFileOld.FullName( filenameold ); |
447 iHandler->SetSrcFileName( filenameold ); |
447 iHandler->SetSrcFileName( filenameold ); |
|
448 iHandler->SetSrcFile( aFileOld ); |
448 |
449 |
449 // If aFileNameNew is not set, use source file name |
450 // If aFileNameNew is not set, use source file name |
450 if (aFileNameNew.Length() != 0) |
451 if (aFileNameNew.Length() != 0) |
451 { |
452 { |
452 error = iHandler->SetDestName( aFileNameNew ); |
453 error = iHandler->SetDestName( aFileNameNew ); |
1391 if ( error == KErrNone ) |
1392 if ( error == KErrNone ) |
1392 { |
1393 { |
1393 CloseSharableFS(); |
1394 CloseSharableFS(); |
1394 User::LeaveIfError(iSharableFS.Connect()); |
1395 User::LeaveIfError(iSharableFS.Connect()); |
1395 User::LeaveIfError(iSharableFS.ShareProtected()); |
1396 User::LeaveIfError(iSharableFS.ShareProtected()); |
1396 TInt err = aSharableFile.Open(iSharableFS,aFileName,EFileShareReadersOnly); |
1397 |
1397 if (err == KErrInUse) |
1398 error = aSharableFile.Open( iSharableFS, aFileName, EFileShareReadersOrWriters ); |
1398 { |
1399 if( error == KErrTooBig ) |
1399 User::LeaveIfError(aSharableFile.Open(iSharableFS,aFileName,EFileShareReadersOrWriters)); |
1400 { |
1400 } |
1401 RFile64* file64 = NULL; |
1401 else if ( err != KErrNone ) |
1402 file64 = static_cast<RFile64*> (&aSharableFile); |
1402 { |
1403 if( file64 != NULL ) |
1403 error = err; // Otherwise possible KErrNotReady caused by hotswap leads to crash later |
1404 { |
1404 } |
1405 error = file64->Open( iSharableFS, aFileName, EFileShareReadersOrWriters ); |
1405 } |
1406 } |
|
1407 } |
|
1408 } |
|
1409 |
1406 #ifdef _DEBUG |
1410 #ifdef _DEBUG |
1407 RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error); |
1411 RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error); |
1408 #endif |
1412 #endif |
1409 |
1413 |
1410 LEAVEONERROR( error ); |
1414 LEAVEONERROR( error ); |