commonuis/CommonUi/src/DocumentHandler.cpp
branchRCL_3
changeset 18 0aa5fbdfbc30
parent 10 9f56a4e1b8ab
child 51 fcdfafb36fe7
equal deleted inserted replaced
16:71dd06cfe933 18:0aa5fbdfbc30
  1391     if ( error == KErrNone )
  1391     if ( error == KErrNone )
  1392         {
  1392         {
  1393         CloseSharableFS();
  1393         CloseSharableFS();
  1394         User::LeaveIfError(iSharableFS.Connect());
  1394         User::LeaveIfError(iSharableFS.Connect());
  1395         User::LeaveIfError(iSharableFS.ShareProtected());
  1395         User::LeaveIfError(iSharableFS.ShareProtected());
  1396         TInt err = aSharableFile.Open(iSharableFS,aFileName,EFileShareReadersOnly);
  1396 
  1397         if (err == KErrInUse)
  1397 		error = aSharableFile.Open( iSharableFS, aFileName, EFileShareReadersOrWriters );
  1398             {
  1398         if( error == KErrTooBig )
  1399             err = aSharableFile.Open( iSharableFS,aFileName,EFileShareReadersOrWriters );
  1399 			{
  1400             }
  1400 		    RFile64* file64 = NULL;
  1401         else if ( err == KErrTooBig )
  1401 		    file64 = static_cast<RFile64*> (&aSharableFile);
  1402         	{
  1402 		    if( file64 != NULL )
  1403 			RFile64* file64 = NULL;
  1403 			    {
  1404 			file64 = static_cast<RFile64*> (&aSharableFile);
  1404 			    error = file64->Open( iSharableFS, aFileName, EFileShareReadersOrWriters );
  1405 			if( file64 != NULL )
  1405 			    }
  1406 				{
  1406 			}
  1407 				err = file64->Open(iSharableFS,aFileName,EFileShareReadersOnly);
  1407 		}
  1408 				if( err == KErrInUse )
  1408     
  1409 					{
       
  1410                     err = aSharableFile.Open( iSharableFS,aFileName,EFileShareReadersOrWriters );
       
  1411 					}
       
  1412 				}
       
  1413         	}
       
  1414         error = err; // Otherwise possible KErrNotReady caused by hotswap leads to crash later           
       
  1415         }
       
  1416     #ifdef _DEBUG
  1409     #ifdef _DEBUG
  1417     RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error);
  1410     RDebug::Print( _L("DocumentHandler: CDocumentHandler::OpenTempFileL: finished with error=%d."), error);
  1418     #endif
  1411     #endif
  1419 
  1412 
  1420     LEAVEONERROR( error );
  1413     LEAVEONERROR( error );