Giovanni Mascellani (@giomasce) commented about libs/vkd3d-shader/dxil.c:
- }
- if (node->operand_count > 7)
- {
WARN("Ignoring %u extra operands.\n", node->operand_count - 7);vkd3d_shader_parser_warning(&sm6->p, VKD3D_SHADER_WARNING_DXIL_IGNORING_OPERANDS,"Ignoring %u extra operands for hull shader properties.", node->operand_count - 7);- }
- if (!sm6_metadata_value_is_value(node->operands[0]))
- {
WARN("Patch constant function node is not a value.\n");vkd3d_shader_parser_error(&sm6->p, VKD3D_SHADER_ERROR_DXIL_INVALID_PROPERTIES,"Hull shader patch constant function node is not a value.");- }
- else
- {
sm6->patch_constant_function = node->operands[0]->u.value->u.function.name;
Shouldn't you check that that value is indeed a function and you can access its name?