=?UTF-8?Q?J=C3=B3zef=20Kucia=20?=: vkd3d: Return E_FAIL for invalid shader bytecode.

Alexandre Julliard julliard at winehq.org
Wed Dec 12 13:44:45 CST 2018


Module: vkd3d
Branch: master
Commit: 6bcee199606ca051f099d0de32d3e1554f13d2df
URL:    https://source.winehq.org/git/vkd3d.git/?a=commit;h=6bcee199606ca051f099d0de32d3e1554f13d2df

Author: Józef Kucia <jkucia at 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 at codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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;




More information about the wine-cvs mailing list