(Circus): false positive verification.

This commit is contained in:
morkt 2018-07-25 10:00:59 +04:00
parent 02c2226295
commit b6f47cace1

View File

@ -70,6 +70,10 @@ namespace GameRes.Formats.Circus
uint next_offset = file.View.ReadUInt32 (index_offset+name_length); uint next_offset = file.View.ReadUInt32 (index_offset+name_length);
if (next_offset < 4+index_size) if (next_offset < 4+index_size)
return null; return null;
uint first_size = file.View.ReadUInt32 (index_offset+name_length-4);
uint second_offset = file.View.ReadUInt32 (index_offset+name_length*2+4);
if (second_offset - next_offset == first_size)
return null;
var dir = new List<Entry> (count); var dir = new List<Entry> (count);
for (int i = 0; i < count; ++i) for (int i = 0; i < count; ++i)
{ {