summaryrefslogtreecommitdiff
path: root/thirdparty/harfbuzz/src/hb-map.cc
diff options
context:
space:
mode:
authorbaptr <1522777+baptr@users.noreply.github.com>2023-02-14 02:40:06 -0800
committerbaptr <1522777+baptr@users.noreply.github.com>2023-02-14 02:46:32 -0800
commit2eadbe7b78ab299359a8f8c4f9eb5d67e4b4aac9 (patch)
tree43d9b0d559cb47f08ff4571d3b63fb9eadce9d08 /thirdparty/harfbuzz/src/hb-map.cc
parentb7723a01d957e6492a3f20bce8a47d3559afe5c5 (diff)
Fix multiplayer replication crash in on_sync_receive.
A number of early continue cases applied the packet-provided `size` without validation, allowing large uint32_t values to be treated as negative offsets and leading to segfaults. Now, we validate `size` against the buffer length immediately to avoid a crash. This could be triggered by receiving sync data for a synchronizer who's root node had just been removed, since the code path that checked for unusable sync state failed to advance the offset. Thus the next read could interpret part of the payload as such an invalid `size`. Now, we properly advance the read offset in that case (and raise a better error).
Diffstat (limited to 'thirdparty/harfbuzz/src/hb-map.cc')
0 files changed, 0 insertions, 0 deletions