mirror of https://github.com/ZDoom/gzdoom-gles.git
- Initialize the nerve checksum at compile-time instead of run-time.
- Fixed: Crash in FWadCollection::RenameNerve() for files without a FileReader object. SVN r3932 (trunk)
This commit is contained in:
parent
aab12c6b0c
commit
d0c3c924d4
|
@ -828,13 +828,17 @@ void FWadCollection::RenameNerve ()
|
||||||
|
|
||||||
bool found = false;
|
bool found = false;
|
||||||
BYTE cksum[16];
|
BYTE cksum[16];
|
||||||
BYTE nerve[16] = { 0x96, 0x7d, 0x5a, 0xe2, 0x3d, 0xaf, 0x45, 0x19,
|
static const BYTE nerve[16] = { 0x96, 0x7d, 0x5a, 0xe2, 0x3d, 0xaf, 0x45, 0x19,
|
||||||
0x62, 0x12, 0xae, 0x1b, 0x60, 0x5d, 0xa3, 0xb0 };
|
0x62, 0x12, 0xae, 0x1b, 0x60, 0x5d, 0xa3, 0xb0 };
|
||||||
size_t nervesize = 3819855; // NERVE.WAD's file size
|
size_t nervesize = 3819855; // NERVE.WAD's file size
|
||||||
int w = IWAD_FILENUM;
|
int w = IWAD_FILENUM;
|
||||||
while (++w < GetNumWads())
|
while (++w < GetNumWads())
|
||||||
{
|
{
|
||||||
FileReader *fr = GetFileReader(w);
|
FileReader *fr = GetFileReader(w);
|
||||||
|
if (fr == NULL)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (fr->GetLength() != nervesize)
|
if (fr->GetLength() != nervesize)
|
||||||
{
|
{
|
||||||
// Skip MD5 computation when there is a
|
// Skip MD5 computation when there is a
|
||||||
|
@ -855,11 +859,10 @@ void FWadCollection::RenameNerve ()
|
||||||
if (!found)
|
if (!found)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (DWORD i = 0; i < LumpInfo.Size(); i++)
|
for (int i = GetFirstLump(w); i <= GetLastLump(w); i++)
|
||||||
{
|
{
|
||||||
// Only rename the maps from NERVE.WAD
|
// Only rename the maps from NERVE.WAD
|
||||||
if (LumpInfo[i].wadnum == w)
|
assert(LumpInfo[i].wadnum == w);
|
||||||
{
|
|
||||||
if (LumpInfo[i].lump->dwName == MAKE_ID('C', 'W', 'I', 'L'))
|
if (LumpInfo[i].lump->dwName == MAKE_ID('C', 'W', 'I', 'L'))
|
||||||
{
|
{
|
||||||
LumpInfo[i].lump->Name[0] = 'N';
|
LumpInfo[i].lump->Name[0] = 'N';
|
||||||
|
@ -872,7 +875,6 @@ void FWadCollection::RenameNerve ()
|
||||||
LumpInfo[i].lump->dwName = MAKE_ID('L', 'E', 'V', 'E');
|
LumpInfo[i].lump->dwName = MAKE_ID('L', 'E', 'V', 'E');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//==========================================================================
|
//==========================================================================
|
||||||
|
|
Loading…
Reference in New Issue