- Rewrote IWAD detection code to use the ResourceFile classes instead of

reading the WAD directory directly. As a side effect it should now be
  possible to use Zip and 7z for IWADs, too.


SVN r1621 (trunk)
This commit is contained in:
Christoph Oelckers 2009-05-30 09:53:38 +00:00
commit 2effc9b803
12 changed files with 149 additions and 128 deletions

View file

@ -74,7 +74,7 @@ class FGrpFile : public FUncompressedFile
{
public:
FGrpFile(const char * filename, FileReader *file);
bool Open();
bool Open(bool quiet);
};
@ -96,7 +96,7 @@ FGrpFile::FGrpFile(const char *filename, FileReader *file)
//
//==========================================================================
bool FGrpFile::Open()
bool FGrpFile::Open(bool quiet)
{
GrpInfo header;
@ -121,7 +121,7 @@ bool FGrpFile::Open()
fileinfo[i].NameWithZero[12] = '\0'; // Be sure filename is null-terminated
Lumps[i].LumpNameSetup(fileinfo[i].NameWithZero);
}
Printf(", %d lumps\n", NumLumps);
if (!quiet) Printf(", %d lumps\n", NumLumps);
delete[] fileinfo;
return true;
@ -134,7 +134,7 @@ bool FGrpFile::Open()
//
//==========================================================================
FResourceFile *CheckGRP(const char *filename, FileReader *file)
FResourceFile *CheckGRP(const char *filename, FileReader *file, bool quiet)
{
char head[12];
@ -146,7 +146,7 @@ FResourceFile *CheckGRP(const char *filename, FileReader *file)
if (!memcmp(head, "KenSilverman", 12))
{
FResourceFile *rf = new FGrpFile(filename, file);
if (rf->Open()) return rf;
if (rf->Open(quiet)) return rf;
delete rf;
}
}