mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-17 18:31:04 +00:00
Enhance the sanity check for block sizes; check that the resulting pointer is
pointing to the range [first character, last character] instead of just not after the last character. Patch by Yan Ivnitskiy! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133867 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
644eb9befc
commit
3e64427cb3
@ -375,10 +375,12 @@ public:
|
|||||||
|
|
||||||
// Check that the block wasn't partially defined, and that the offset isn't
|
// Check that the block wasn't partially defined, and that the offset isn't
|
||||||
// bogus.
|
// bogus.
|
||||||
if (AtEndOfStream() || NextChar+NumWords*4 > BitStream->getLastChar())
|
const unsigned char *const SkipTo = NextChar + NumWords*4;
|
||||||
|
if (AtEndOfStream() || SkipTo > BitStream->getLastChar() ||
|
||||||
|
SkipTo < BitStream->getFirstChar())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
NextChar += NumWords*4;
|
NextChar = SkipTo;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user