Module: vkd3d Branch: master Commit: 6bcee199606ca051f099d0de32d3e1554f13d2df URL: https://source.winehq.org/git/vkd3d.git/?a=commit;h=6bcee199606ca051f099d0de... Author: Józef Kucia <jkucia(a)codeweavers.com> Date: Tue Dec 11 15:48:03 2018 +0100 vkd3d: Return E_FAIL for invalid shader bytecode. On Windows invalid shader bytecode leads to a crash, E_FAIL or E_OUTOFMEMORY error. 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/utils.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libs/vkd3d/utils.c b/libs/vkd3d/utils.c index b7ebbdd..fc09bf9 100644 --- a/libs/vkd3d/utils.c +++ b/libs/vkd3d/utils.c @@ -423,12 +423,14 @@ HRESULT hresult_from_vkd3d_result(int vkd3d_result) { case VKD3D_OK: return S_OK; + case VKD3D_ERROR_INVALID_SHADER: + WARN("Invalid shader bytecode.\n"); + /* fall-through */ case VKD3D_ERROR: return E_FAIL; case VKD3D_ERROR_OUT_OF_MEMORY: return E_OUTOFMEMORY; case VKD3D_ERROR_INVALID_ARGUMENT: - case VKD3D_ERROR_INVALID_SHADER: return E_INVALIDARG; case VKD3D_ERROR_NOT_IMPLEMENTED: return E_NOTIMPL;