- Roll back filesystem changes. These were causing instabilities in the master branch that were interfering with development.
This commit is contained in:
parent
786bfa6419
commit
f3b0c3ac5e
90 changed files with 1349 additions and 1582 deletions
|
|
@ -314,7 +314,7 @@ void FIWadManager::ParseIWadInfo(const char *fn, const char *data, int datasize,
|
|||
// Look for IWAD definition lump
|
||||
//
|
||||
//==========================================================================
|
||||
void GetReserved(FileSys::FileSystemFilterInfo& lfi);
|
||||
void GetReserved(FileSys::LumpFilterInfo& lfi);
|
||||
|
||||
FIWadManager::FIWadManager(const char *firstfn, const char *optfn)
|
||||
{
|
||||
|
|
@ -322,10 +322,10 @@ FIWadManager::FIWadManager(const char *firstfn, const char *optfn)
|
|||
std::vector<std::string> fns;
|
||||
fns.push_back(firstfn);
|
||||
if (optfn) fns.push_back(optfn);
|
||||
FileSys::FileSystemFilterInfo lfi;
|
||||
FileSys::LumpFilterInfo lfi;
|
||||
GetReserved(lfi);
|
||||
|
||||
if (check.Initialize(fns, &lfi, nullptr))
|
||||
if (check.InitMultipleFiles(fns, &lfi, nullptr))
|
||||
{
|
||||
// this is for the IWAD picker. As we have a filesystem open here that contains the base files, it is the easiest place to load the strings early.
|
||||
GStrings.LoadStrings(check, language);
|
||||
|
|
@ -350,8 +350,7 @@ FIWadManager::FIWadManager(const char *firstfn, const char *optfn)
|
|||
int FIWadManager::ScanIWAD (const char *iwad)
|
||||
{
|
||||
FileSystem check;
|
||||
std::vector<std::string> list({ iwad });
|
||||
check.Initialize(list, nullptr);
|
||||
check.InitSingleFile(iwad, nullptr);
|
||||
|
||||
mLumpsFound.Resize(mIWadInfos.Size());
|
||||
|
||||
|
|
@ -369,18 +368,19 @@ int FIWadManager::ScanIWAD (const char *iwad)
|
|||
}
|
||||
};
|
||||
|
||||
if (check.GetFileCount() > 0)
|
||||
if (check.GetNumEntries() > 0)
|
||||
{
|
||||
memset(&mLumpsFound[0], 0, mLumpsFound.Size() * sizeof(mLumpsFound[0]));
|
||||
for(int ii = 0; ii < check.GetFileCount(); ii++)
|
||||
for(int ii = 0; ii < check.GetNumEntries(); ii++)
|
||||
{
|
||||
auto full = check.GetFileName(ii);
|
||||
|
||||
CheckFileName(check.GetFileShortName(ii));
|
||||
auto full = check.GetFileFullName(ii, false);
|
||||
if (full && strnicmp(full, "maps/", 5) == 0)
|
||||
{
|
||||
FString mapname(&full[5], strcspn(&full[5], "."));
|
||||
CheckFileName(mapname.GetChars());
|
||||
}
|
||||
else CheckFileName(full);
|
||||
}
|
||||
}
|
||||
for (unsigned i = 0; i< mIWadInfos.Size(); i++)
|
||||
|
|
@ -404,11 +404,11 @@ int FIWadManager::CheckIWADInfo(const char* fn)
|
|||
{
|
||||
FileSystem check;
|
||||
|
||||
FileSys::FileSystemFilterInfo lfi;
|
||||
FileSys::LumpFilterInfo lfi;
|
||||
GetReserved(lfi);
|
||||
|
||||
std::vector<std::string> filenames = { fn };
|
||||
if (check.Initialize(filenames, &lfi, nullptr))
|
||||
if (check.InitMultipleFiles(filenames, &lfi, nullptr))
|
||||
{
|
||||
int num = check.CheckNumForName("IWADINFO");
|
||||
if (num >= 0)
|
||||
|
|
@ -829,14 +829,14 @@ int FIWadManager::IdentifyVersion (std::vector<std::string>&wadfiles, const char
|
|||
iwadnum++;
|
||||
}
|
||||
|
||||
fileSystem.SetBaseNum(iwadnum);
|
||||
fileSystem.SetIwadNum(iwadnum);
|
||||
if (picks[pick].mRequiredPath.IsNotEmpty())
|
||||
{
|
||||
D_AddFile (wadfiles, picks[pick].mRequiredPath.GetChars(), true, -1, GameConfig);
|
||||
iwadnum++;
|
||||
}
|
||||
D_AddFile (wadfiles, picks[pick].mFullPath.GetChars(), true, -1, GameConfig);
|
||||
fileSystem.SetMaxBaseNum(iwadnum);
|
||||
fileSystem.SetMaxIwadNum(iwadnum);
|
||||
|
||||
auto info = mIWadInfos[picks[pick].mInfoIndex];
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue