Józef Kucia : vkd3d: Avoid passing invalid viewport to Vulkan.
Module: vkd3d Branch: master Commit: 70822141b73eaf699d2696f4c7cc9a5b72a22be6 URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=70822141b73eaf699d2696f4... Author: Józef Kucia <jkucia(a)codeweavers.com> Date: Thu Feb 14 12:22:34 2019 +0100 vkd3d: Avoid passing invalid viewport to Vulkan. Needs more tests. 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/command.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libs/vkd3d/command.c b/libs/vkd3d/command.c index 4a9f7c4..7457ae3 100644 --- a/libs/vkd3d/command.c +++ b/libs/vkd3d/command.c @@ -2953,6 +2953,12 @@ static void STDMETHODCALLTYPE d3d12_command_list_RSSetViewports(ID3D12GraphicsCo vk_viewports[i].height = -viewports[i].Height; vk_viewports[i].minDepth = viewports[i].MinDepth; vk_viewports[i].maxDepth = viewports[i].MaxDepth; + + if (!vk_viewports[i].width || !vk_viewports[i].height) + { + FIXME("Invalid viewport %u, ignoring RSSetViewports().\n", i); + return; + } } vk_procs = &list->device->vk_procs;
participants (1)
-
Alexandre Julliard