Module: vkd3d Branch: master Commit: 68a4b89d6160c97ac2acc0e502f9524f6b115cc8 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=68a4b89d6160c97ac2acc0e5... Author: Józef Kucia <jkucia(a)codeweavers.com> Date: Tue May 14 13:27:39 2019 +0200 vkd3d-shader: Do not assume destination is 4 component vector in vkd3d_dxbc_compiler_emit_store(). Signed-off-by: Józef Kucia <jkucia(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- libs/vkd3d-shader/spirv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libs/vkd3d-shader/spirv.c b/libs/vkd3d-shader/spirv.c index e3adc5a..18e10ad 100644 --- a/libs/vkd3d-shader/spirv.c +++ b/libs/vkd3d-shader/spirv.c @@ -3179,7 +3179,7 @@ static void vkd3d_dxbc_compiler_emit_store(struct vkd3d_dxbc_compiler *compiler, for (i = 0, component_idx = 0; i < dst_component_count; ++i) { if (write_mask & (VKD3DSP_WRITEMASK_0 << i)) - components[i] = VKD3D_VEC4_SIZE + component_idx++; + components[i] = dst_component_count + component_idx++; else components[i] = i; }