mirror of
https://github.com/WerWolv/ImHex.git
synced 2026-03-28 07:47:03 -05:00
patterns: Fixed off-by-one error when calculating unsized array sizes
Closes #453, thanks to @Dyddye
This commit is contained in:
@@ -117,7 +117,7 @@ namespace hex::pl {
|
||||
} else {
|
||||
std::vector<u8> buffer(templatePattern->getSize());
|
||||
while (true) {
|
||||
if (evaluator->dataOffset() >= evaluator->getProvider()->getActualSize() - buffer.size())
|
||||
if (evaluator->dataOffset() > evaluator->getProvider()->getActualSize() - buffer.size())
|
||||
LogConsole::abortEvaluation("reached end of file before finding end of unsized array", this);
|
||||
|
||||
evaluator->getProvider()->read(evaluator->dataOffset(), buffer.data(), buffer.size());
|
||||
@@ -260,7 +260,7 @@ namespace hex::pl {
|
||||
for (auto &pattern : patterns) {
|
||||
std::vector<u8> buffer(pattern->getSize());
|
||||
|
||||
if (evaluator->dataOffset() >= evaluator->getProvider()->getActualSize() - buffer.size()) {
|
||||
if (evaluator->dataOffset() > evaluator->getProvider()->getActualSize() - buffer.size()) {
|
||||
LogConsole::abortEvaluation("reached end of file before finding end of unsized array", this);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user