From 8ec4f75654d79490dea6058516b7ece5475fcd3d Mon Sep 17 00:00:00 2001 From: Giovanni Mascellani Date: Thu, 16 Oct 2025 12:22:27 +0200 Subject: [PATCH] vkd3d-shader/ir: Process all destinations when lowering SATURATE modifiers. The instruction iterator should not be advanced when iterating over more than one destination. --- libs/vkd3d-shader/ir.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/vkd3d-shader/ir.c b/libs/vkd3d-shader/ir.c index 8dec2205f..cbc45e7b0 100644 --- a/libs/vkd3d-shader/ir.c +++ b/libs/vkd3d-shader/ir.c @@ -2238,8 +2238,8 @@ static enum vkd3d_result vsir_program_lower_modifiers(struct vsir_program *progr { if (!vsir_program_iterator_insert_after(&it, 1)) return VKD3D_ERROR_OUT_OF_MEMORY; - ins = vsir_program_iterator_current(&it); new_ins = vsir_program_iterator_next(&it); + ins = vsir_program_iterator_prev(&it); if (!vsir_instruction_init_with_params(program, new_ins, &ins->location, VSIR_OP_SATURATE, 1, 1)) {