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
|
||||
// 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;
|
||||
|
||||
NextChar += NumWords*4;
|
||||
NextChar = SkipTo;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user