diff -r a179b74831c9 -r c1f20ce4abcf userlibandfileserver/fileserver/sfile/sf_std.h --- a/userlibandfileserver/fileserver/sfile/sf_std.h Thu Aug 19 11:14:22 2010 +0300 +++ b/userlibandfileserver/fileserver/sfile/sf_std.h Tue Aug 31 16:34:26 2010 +0300 @@ -34,7 +34,6 @@ #include "sf_func.h" #include #include "f32trace.h" -#include #define __PRINT1TEMP_ALWAYS(t,a) {{TBuftemp(a);RDebug::Print(t,&temp);}} #define __PRINT2TEMP_ALWAYS(t,a,b) {{TBuftemp(b);RDebug::Print(t,a,&temp);}} @@ -244,8 +243,7 @@ enum TFsPanic { - ELdrImportedOrdinalDoesNotExist, - ELdrHeapCorruptionOnRemove + ELdrImportedOrdinalDoesNotExist }; // enum TFsFault @@ -453,7 +451,8 @@ ETraceLddLoadFailure, //200 ETooManyDrivesPerSocket, ENotificationFault, - EFsObjectOpen + EFsObjectOpen, + EContainerHeapCorruptionOnRemove }; @@ -810,7 +809,7 @@ NONSHARABLE_CLASS(CPluginThread) : public CRequestThread { public: - CPluginThread(CFsPlugin& aPlugin); + CPluginThread(CFsPlugin& aPlugin, RLibrary aLibrary); ~CPluginThread(); void CompleteSessionRequests(CSessionFs* aSession, TInt aValue); @@ -822,7 +821,7 @@ void OperationLockSignal(); private: - static CPluginThread* NewL(CFsPlugin& aPlugin); + static CPluginThread* NewL(CFsPlugin& aPlugin, RLibrary aLibrary); TUint StartL(); virtual TInt DoThreadInitialise(); private: @@ -831,6 +830,7 @@ /** @prototype */ RSemaphore iOperationLock; + RLibrary iLib; // contains a handle to the library which created the plugin friend class FsPluginManager; }; @@ -1716,7 +1716,6 @@ extern HBufC* TheDriveNames[]; extern TDrive TheDrives[KMaxDrives]; extern TFileName TheDefaultPath; -extern RFTrace TheFtrace; extern SCapabilitySet AllCapabilities; extern SCapabilitySet DisabledCapabilities; @@ -1875,6 +1874,7 @@ TInt iFairSchedulingLen; TBool iNotifyAsyncReadersPending; TBool iDeleteOnClose; + TDblQue iShareList; // A list containing the CFileShare objects associated with the file protected: TInt iPromotedShares; @@ -1884,11 +1884,14 @@ /** maximum file size supported by the filesystem that instantiates the CFileCB, associated with this object. - For example, FAT32 supports files not larger than 4GB-1. Other file systems can support larger files. + For example, FAT32 supports files not larger than 4GB-1. Other file systems can support larger files. This member allows file server to know maximum allowed position in the file. The default value is KMaxTUint64 */ - TUint64 iMaxSupportedFileSize; + TUint64 iMaxSupportedFileSize; + + TInt iNonSequentialFileModes; // Count of clients without the 'Sequential' mode enabled + TBool iSequential; // Indicates whether the file is in 'Sequential' mode public: // Provides support for large file size ( file size > 4GB - 1) @@ -1958,7 +1961,6 @@ RLibrary iLibrary; }; - #include "sf_ops.h" #include "sf_std.inl"