mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-28 06:58:05 +00:00
Fixed a verifier check that didn't return from its parent.
Change-Id: I1aef5fdba72de0c3bb8276c9f50fffa494f26e29 Tested: on Linux.
This commit is contained in:
@@ -1222,7 +1222,8 @@ class Verifier FLATBUFFERS_FINAL_CLASS {
|
|||||||
// must be 0.
|
// must be 0.
|
||||||
auto size = ReadScalar<uoffset_t>(vec);
|
auto size = ReadScalar<uoffset_t>(vec);
|
||||||
auto max_elems = FLATBUFFERS_MAX_BUFFER_SIZE / elem_size;
|
auto max_elems = FLATBUFFERS_MAX_BUFFER_SIZE / elem_size;
|
||||||
Check(size < max_elems); // Protect against byte_size overflowing.
|
if (!Check(size < max_elems))
|
||||||
|
return false; // Protect against byte_size overflowing.
|
||||||
auto byte_size = sizeof(size) + elem_size * size;
|
auto byte_size = sizeof(size) + elem_size * size;
|
||||||
*end = vec + byte_size;
|
*end = vec + byte_size;
|
||||||
return Verify(vec, byte_size);
|
return Verify(vec, byte_size);
|
||||||
|
|||||||
Reference in New Issue
Block a user