fix out of bounds read

This commit is contained in:
RSDuck
2021-01-07 18:32:28 +01:00
parent 1d8e302c13
commit e311eea1c5
3 changed files with 8 additions and 5 deletions

View File

@ -51,9 +51,14 @@ struct NonStupidBitField
template <typename T>
void Next()
{
while (RemainingBits == 0 && DataIdx < DataLength)
if (DataIdx >= DataLength)
return;
while (RemainingBits == 0)
{
DataIdx += sizeof(T);
if (DataIdx >= DataLength)
return;
RemainingBits = *(T*)&BitField.Data[DataIdx];
}