(XP3): workaround for ill-formed archives.

This commit is contained in:
morkt 2019-04-21 00:18:29 +04:00
parent afe551863b
commit bf6d1a6c3f

View File

@ -161,7 +161,12 @@ namespace GameRes.Formats.KiriKiri
long section_size = header.ReadInt64(); long section_size = header.ReadInt64();
entry_size -= 12; entry_size -= 12;
if (section_size > entry_size) if (section_size > entry_size)
break; {
// allow "info" sections with wrong size
if (section != 0x6f666e69)
break;
section_size = entry_size;
}
entry_size -= section_size; entry_size -= section_size;
long next_section_pos = header.BaseStream.Position + section_size; long next_section_pos = header.BaseStream.Position + section_size;
switch (section) switch (section)