From 3163e589bc41b674c46750bef9a3cbbaa90fc560 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Tue, 8 Jul 2025 19:25:15 +0200 Subject: [PATCH] vkd3d-shader/fx: Explicitly handle bool state values when parsing. For bools 0/1 values are treated as named values, outside of this range it's zero/non-zero. Signed-off-by: Nikolay Sivov --- libs/vkd3d-shader/fx.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libs/vkd3d-shader/fx.c b/libs/vkd3d-shader/fx.c index 4224ad19d..e5a792583 100644 --- a/libs/vkd3d-shader/fx.c +++ b/libs/vkd3d-shader/fx.c @@ -5336,6 +5336,8 @@ static void fx_4_parse_state_object_initializer(struct fx_parser *parser, uint32 vkd3d_string_buffer_printf(&parser->buffer, "0x%.2x", value.u); else if (state->type == FX_UINT) vkd3d_string_buffer_printf(&parser->buffer, "%u", value.u); + else if (state->type == FX_BOOL) + vkd3d_string_buffer_printf(&parser->buffer, "%s", value.u ? "true" : "false"); else if (state->type == FX_FLOAT) vkd3d_string_buffer_printf(&parser->buffer, "%g", value.f);