From 542b8c4c3b768cb1f3a6694fa1ced8760efede56 Mon Sep 17 00:00:00 2001 From: Brandon DeRosier Date: Tue, 22 Feb 2022 11:15:33 -0800 Subject: [PATCH] Fix index size check to respect 16 bit buffers (#19) --- impeller/renderer/backend/metal/render_pass_mtl.mm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/impeller/renderer/backend/metal/render_pass_mtl.mm b/impeller/renderer/backend/metal/render_pass_mtl.mm index 81007c7d6108a..8335b362331ea 100644 --- a/impeller/renderer/backend/metal/render_pass_mtl.mm +++ b/impeller/renderer/backend/metal/render_pass_mtl.mm @@ -473,7 +473,8 @@ static bool Bind(PassBindingsCache& pass, if (!mtl_index_buffer) { return false; } - FML_DCHECK(command.index_count * sizeof(uint32_t) == + FML_DCHECK(command.index_count * + (command.index_type == IndexType::k16bit ? 2 : 4) == command.index_buffer.range.length); // Returns void. All error checking must be done by this point. [encoder drawIndexedPrimitives:ToMTLPrimitiveType(command.primitive_type)