Add more validations for input state This change sets limit for stride in VertexInputDescriptor and offset in VertexAttributeDescriptor, and adds validation code for them. It also uses existing descriptors to replace redundant definitions. BUG=dawn:107 Change-Id: Ifbb07f48ec9a5baae8ae8d21865dc384670b759a Reviewed-on: https://dawn-review.googlesource.com/c/4901 Commit-Queue: Yunchao He <yunchao.he@intel.com> Reviewed-by: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/dawn_native/d3d12/InputStateD3D12.cpp b/src/dawn_native/d3d12/InputStateD3D12.cpp index 9178423..edeb4c0 100644 --- a/src/dawn_native/d3d12/InputStateD3D12.cpp +++ b/src/dawn_native/d3d12/InputStateD3D12.cpp
@@ -71,7 +71,7 @@ D3D12_INPUT_ELEMENT_DESC& inputElementDescriptor = mInputElementDescriptors[count++]; - const AttributeInfo& attribute = GetAttribute(i); + const VertexAttributeDescriptor& attribute = GetAttribute(i); // If the HLSL semantic is TEXCOORDN the SemanticName should be "TEXCOORD" and the // SemanticIndex N @@ -80,7 +80,7 @@ inputElementDescriptor.Format = VertexFormatType(attribute.format); inputElementDescriptor.InputSlot = attribute.inputSlot; - const InputInfo& input = GetInput(attribute.inputSlot); + const VertexInputDescriptor& input = GetInput(attribute.inputSlot); inputElementDescriptor.AlignedByteOffset = attribute.offset; inputElementDescriptor.InputSlotClass = InputStepModeFunction(input.stepMode);