Module: wine Branch: master Commit: ef7b2180cf55651035a8251abb2e5669346a7e53 URL: https://source.winehq.org/git/wine.git/?a=commit;h=ef7b2180cf55651035a8251ab... Author: Jan Sikorski <jsikorski(a)codeweavers.com> Date: Tue May 4 12:43:56 2021 +0200 wined3d: Make sure scissor offsets are not negative. Signed-off-by: Jan Sikorski <jsikorski(a)codeweavers.com> Signed-off-by: Henri Verbeet <hverbeet(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wined3d/context_vk.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/dlls/wined3d/context_vk.c b/dlls/wined3d/context_vk.c index fbc1e294fcd..83b1d081514 100644 --- a/dlls/wined3d/context_vk.c +++ b/dlls/wined3d/context_vk.c @@ -2204,6 +2204,11 @@ static bool wined3d_context_vk_update_graphics_pipeline_key(struct wined3d_conte key->scissor.extent.width = key->viewport.width; key->scissor.extent.height = key->viewport.height; } + /* Scissor offsets need to be non-negative (VUID-VkPipelineViewportStateCreateInfo-x-02821) */ + if (key->scissor.offset.x < 0) + key->scissor.offset.x = 0; + if (key->scissor.offset.y < 0) + key->scissor.offset.y = 0; key->viewport.y += key->viewport.height; key->viewport.height = -key->viewport.height;