commonuis/CommonUi/src/DocumentHandler.cpp
branchRCL_3
changeset 19 aecbbf00d063
parent 18 fcdfafb36fe7
child 20 d48ab3b357f1
equal deleted inserted replaced
18:fcdfafb36fe7 19:aecbbf00d063
   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 );
       
   449 
   448 
   450     // If aFileNameNew is not set, use source file name
   449     // If aFileNameNew is not set, use source file name
   451     if (aFileNameNew.Length() != 0)
   450     if (aFileNameNew.Length() != 0)
   452         {
   451         {
   453         error = iHandler->SetDestName( aFileNameNew );
   452         error = iHandler->SetDestName( aFileNameNew );
  1392     if ( error == KErrNone )
  1391     if ( error == KErrNone )
  1393         {
  1392         {
  1394         CloseSharableFS();
  1393         CloseSharableFS();
  1395         User::LeaveIfError(iSharableFS.Connect());
  1394         User::LeaveIfError(iSharableFS.Connect());
  1396         User::LeaveIfError(iSharableFS.ShareProtected());
  1395         User::LeaveIfError(iSharableFS.ShareProtected());
  1397 
  1396         TInt err = aSharableFile.Open(iSharableFS,aFileName,EFileShareReadersOnly);
  1398 		error = aSharableFile.Open( iSharableFS, aFileName, EFileShareReadersOrWriters );
  1397         if (err == KErrInUse)
  1399         if( error == KErrTooBig )
  1398             {
  1400 			{
  1399             User::LeaveIfError(aSharableFile.Open(iSharableFS,aFileName,EFileShareReadersOrWriters));
  1401 		    RFile64* file64 = NULL;
  1400             }
  1402 		    file64 = static_cast<RFile64*> (&aSharableFile);
  1401         else if ( err != KErrNone )
  1403 		    if( file64 != NULL )
  1402             {
  1404 			    {
  1403             error = err; // Otherwise possible KErrNotReady caused by hotswap leads to crash later
  1405 			    error = file64->Open( iSharableFS, aFileName, EFileShareReadersOrWriters );
  1404             }
  1406 			    }
  1405         }
  1407 			}
       
  1408 		}
       
  1409     
       
  1410     #ifdef _DEBUG
  1406     #ifdef _DEBUG
  1411     RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error);
  1407     RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error);
  1412     #endif
  1408     #endif
  1413 
  1409 
  1414     LEAVEONERROR( error );
  1410     LEAVEONERROR( error );