tree e33ff5f56e1b977d1f72618dcf486e5e9cdcaf15
parent 125911559e0ee031e66bb7cfcf90ca81f1bf6b61
author Amirali Abdolrashidi <abdolrashidi@google.com> 1765845358 -0800
committer Angle LUCI CQ <angle-scoped@luci-project-accounts.iam.gserviceaccount.com> 1766085778 -0800

Vulkan: Fix non-aligned buffer offset wrt stride

  It has been observed in some cases that when copying an entire
vertex buffer for conversion using CPU, there is a possibility that
the end of the copy range falls out of the buffer bounds due to the
copy size being calculated due to the max vertex count, which comes
from GetVertexCountForRange(). If the offset for the data (e.g., set
in glVertexAttribPointer()) is not aligned with the stride, the data
range calculated from the vertex count can fall outside the bounds.

This change will limit the source data size to the buffer bounds to
avoid out-of-bound memory accesses in such cases.

* Updated CalculateMaxVertexCountForConversion() so the intended
  source data size does not exceed the source buffer limit.

* Added unit test to demonstrate that a draw using a vertex buffer
  with an offset not aligned with stride results in a correct draw
  without out-of-bound access.
  * VertexAttributeTest.BufferOffsetNonAlignedWithStride

Bug: angleproject:468923885
Change-Id: I5f2e92bd0c923173d5d1191cf189401e34508fe1
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/7263864
Reviewed-by: Charlie Lao <cclao@google.com>
Commit-Queue: Amirali Abdolrashidi <abdolrashidi@google.com>
Reviewed-by: Yuxin Hu <yuxinhu@google.com>
