diff --git a/src/sfs/sfsMemFS.pas b/src/sfs/sfsMemFS.pas
index f3fcf0b03a269babc3fc5a2b57e8306eef1187bb..627ca78f74e53caaf2f9ac1ad9c61a3d6c24d6ab 100644 (file)
--- a/src/sfs/sfsMemFS.pas
+++ b/src/sfs/sfsMemFS.pas
// as a side effect this gives us an opportunity to read enclosed packs
// from the packs which aren't supporting backseeking (such as zips).
//
+{.$DEFINE SFS_MSMFS}
{$MODE DELPHI}
{.$R-}
unit sfsMemFS;
interface
+{$IFDEF SFS_MSMFS}
uses
SysUtils, Classes, Contnrs, sfs;
procedure SLHRead ();
procedure ReadDirectory (); override;
+
+ public
function OpenFileByIndex (const index: Integer): TStream; override;
end;
function Produce (const prefix, fileName: TSFSString; st: TStream): TSFSVolume; override;
procedure Recycle (vol: TSFSVolume); override;
end;
-
+{$ENDIF}
implementation
+{$IFDEF SFS_MSMFS}
uses
- xstreams;
+ xstreams, utils;
function SLHCheckMagic (st: TStream): Boolean;
function TSFSMemoryVolumeFactory.IsMyVolumePrefix (const prefix: TSFSString): Boolean;
begin
result :=
- (SFSStrComp(prefix, 'mem') = 0) or
- (SFSStrComp(prefix, 'slh!') = 0);
+ StrEquCI1251(prefix, 'mem') or
+ StrEquCI1251(prefix, 'slh!');
end;
procedure TSFSMemoryVolumeFactory.Recycle (vol: TSFSVolume);
initialization
memf := TSFSMemoryVolumeFactory.Create();
SFSRegisterVolumeFactory(memf);
-finalization
- SFSUnregisterVolumeFactory(memf);
+//finalization
+// SFSUnregisterVolumeFactory(memf);
+{$ENDIF}
end.