When using a vertex buffer with DYNAMIC usage, with robust buffer access enabled, we would sometimes read out-of-bounds when using very large values for the index range. An unchecked signed addition would overflow and lead to reading a negative offset. Fix this problem by keeping the value size_t whenever possible. Also do clamped casts when converting to a smaller values. Also adds a regression test. Bug: chromium:842028 Change-Id: Ie630ac857c6acfc0bace849a03eebfbaa2fbe89a Reviewed-on: https://chromium-review.googlesource.com/1055928 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by:Geoff Lang <geofflang@chromium.org>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| shaders | Loading commit data... | |
| Blit9.cpp | Loading commit data... | |
| Blit9.h | Loading commit data... | |
| Buffer9.cpp | Loading commit data... | |
| Buffer9.h | Loading commit data... | |
| Context9.cpp | Loading commit data... | |
| Context9.h | Loading commit data... | |
| DebugAnnotator9.cpp | Loading commit data... | |
| DebugAnnotator9.h | Loading commit data... | |
| Fence9.cpp | Loading commit data... | |
| Fence9.h | Loading commit data... | |
| Framebuffer9.cpp | Loading commit data... | |
| Framebuffer9.h | Loading commit data... | |
| Image9.cpp | Loading commit data... | |
| Image9.h | Loading commit data... | |
| IndexBuffer9.cpp | Loading commit data... | |
| IndexBuffer9.h | Loading commit data... | |
| NativeWindow9.cpp | Loading commit data... | |
| NativeWindow9.h | Loading commit data... | |
| Query9.cpp | Loading commit data... | |
| Query9.h | Loading commit data... | |
| RenderTarget9.cpp | Loading commit data... | |
| RenderTarget9.h | Loading commit data... | |
| Renderer9.cpp | Loading commit data... | |
| Renderer9.h | Loading commit data... | |
| ShaderCache.h | Loading commit data... | |
| ShaderExecutable9.cpp | Loading commit data... | |
| ShaderExecutable9.h | Loading commit data... | |
| StateManager9.cpp | Loading commit data... | |
| StateManager9.h | Loading commit data... | |
| SwapChain9.cpp | Loading commit data... | |
| SwapChain9.h | Loading commit data... | |
| TextureStorage9.cpp | Loading commit data... | |
| TextureStorage9.h | Loading commit data... | |
| VertexArray9.h | Loading commit data... | |
| VertexBuffer9.cpp | Loading commit data... | |
| VertexBuffer9.h | Loading commit data... | |
| VertexDeclarationCache.cpp | Loading commit data... | |
| VertexDeclarationCache.h | Loading commit data... | |
| formatutils9.cpp | Loading commit data... | |
| formatutils9.h | Loading commit data... | |
| renderer9_utils.cpp | Loading commit data... | |
| renderer9_utils.h | Loading commit data... | |
| vertexconversion.h | Loading commit data... |