anchor.diff:        SetLength(fSaves, fCount);
         fSaves[fCount-1] := TKMSaveInfo.Create(PathToSaves, TruncateExt(SearchRec.Name));
       end;
  -  until (FindNext(SearchRec)<>0);
  +  until (FindNext(SearchRec) <> 0);
     FindClose(SearchRec);
   end;
   
  
positive.code: end;
  
  
  function TKMSaveInfo.IsValid:boolean;
  begin
    Result := FileExists(fPath + fFilename + '.sav') and (fSaveError = '') and fInfo.IsValid;
  end;
  
negative.code: 
    TKMSavesCollection = class
    private
      fCount: Word;
      fSaves: array of TKMSaveInfo;
      function GetSave(aIndex: Integer): TKMSaveInfo;
    public
      destructor Destroy; override;
  
      procedure Clear;
      property Count: Word read fCount;
      property SavegameInfo[aIndex: Integer]: TKMSaveInfo read GetSave; default;
      procedure ScanSavesFolder(IsMultiplayer: Boolean);
      procedure DeleteSave(aIndex: Integer);
  
      function SavesList: string;
    end;
  