Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
sm6->patch_constant_function = m->u.value->u.function.name;
- }
- for (i = 1; i < min(node->operand_count, ARRAY_SIZE(operands)); ++i)
- {
if (!sm6_metadata_get_uint_value(sm6, node->operands[i], &operands[i]))
{
WARN("HS property at index %u is not a uint value.\n", i);
vkd3d_shader_parser_error(&sm6->p, VKD3D_SHADER_ERROR_DXIL_INVALID_PROPERTIES,
"Hull shader properties operand at index %u is not an integer.", i);
}
- }
- sm6->p.program.input_control_point_count = operands[1];
- sm6_parser_emit_dcl_count(sm6, VKD3DSIH_DCL_OUTPUT_CONTROL_POINT_COUNT, operands[2]);
- sm6->p.program.output_control_point_count = operands[2];
Those three are not being validate, are they?