[PATCH vkd3d v2 2/3] vkd3d: Move hresult_from_vkd3d_result to vkd3d-common.

Zebediah Figura zfigura at codeweavers.com
Tue Sep 22 17:34:29 CDT 2020


Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 Makefile.am                    |  1 +
 include/private/vkd3d_common.h |  3 +++
 libs/vkd3d-common/error.c      | 43 ++++++++++++++++++++++++++++++++++
 libs/vkd3d/utils.c             | 23 ------------------
 4 files changed, 47 insertions(+), 23 deletions(-)
 create mode 100644 libs/vkd3d-common/error.c

diff --git a/Makefile.am b/Makefile.am
index 05403157..d9745456 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -65,6 +65,7 @@ noinst_LTLIBRARIES = libvkd3d-common.la
 libvkd3d_common_la_SOURCES = \
 	include/private/vkd3d_debug.h \
 	libs/vkd3d-common/debug.c \
+	libs/vkd3d-common/error.c \
 	libs/vkd3d-common/memory.c \
 	libs/vkd3d-common/utf8.c
 
diff --git a/include/private/vkd3d_common.h b/include/private/vkd3d_common.h
index ac217e9e..ed80f48a 100644
--- a/include/private/vkd3d_common.h
+++ b/include/private/vkd3d_common.h
@@ -21,6 +21,7 @@
 
 #include "config.h"
 #include "vkd3d_windows.h"
+#include "vkd3d_types.h"
 
 #include <ctype.h>
 #include <limits.h>
@@ -183,4 +184,6 @@ static inline void vkd3d_parse_version(const char *version, int *major, int *min
     *minor = atoi(version);
 }
 
+HRESULT hresult_from_vkd3d_result(int vkd3d_result) DECLSPEC_HIDDEN;
+
 #endif  /* __VKD3D_COMMON_H */
diff --git a/libs/vkd3d-common/error.c b/libs/vkd3d-common/error.c
new file mode 100644
index 00000000..81c1fd97
--- /dev/null
+++ b/libs/vkd3d-common/error.c
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2018 Józef Kucia for CodeWeavers
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "vkd3d_common.h"
+#include "vkd3d_debug.h"
+
+HRESULT hresult_from_vkd3d_result(int vkd3d_result)
+{
+    switch (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:
+            return E_INVALIDARG;
+        case VKD3D_ERROR_NOT_IMPLEMENTED:
+            return E_NOTIMPL;
+        default:
+            FIXME("Unhandled vkd3d result %d.\n", vkd3d_result);
+            return E_FAIL;
+    }
+}
diff --git a/libs/vkd3d/utils.c b/libs/vkd3d/utils.c
index f9f26635..08e6af93 100644
--- a/libs/vkd3d/utils.c
+++ b/libs/vkd3d/utils.c
@@ -770,29 +770,6 @@ HRESULT hresult_from_vk_result(VkResult vr)
     }
 }
 
-HRESULT hresult_from_vkd3d_result(int vkd3d_result)
-{
-    switch (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:
-            return E_INVALIDARG;
-        case VKD3D_ERROR_NOT_IMPLEMENTED:
-            return E_NOTIMPL;
-        default:
-            FIXME("Unhandled vkd3d result %d.\n", vkd3d_result);
-            return E_FAIL;
-    }
-}
-
 #define LOAD_GLOBAL_PFN(name) \
     if (!(procs->name = (void *)vkGetInstanceProcAddr(NULL, #name))) \
     { \
-- 
2.28.0




More information about the wine-devel mailing list