[PATCH 1/5] wined3d: Use wined3d_buffer_vk_get_buffer_info() when binding Vulkan vertex buffers.

Henri Verbeet hverbeet at codeweavers.com
Fri May 29 11:03:31 CDT 2020


Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
 dlls/wined3d/context_vk.c | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/dlls/wined3d/context_vk.c b/dlls/wined3d/context_vk.c
index 5cb04310d67..45924eb16b1 100644
--- a/dlls/wined3d/context_vk.c
+++ b/dlls/wined3d/context_vk.c
@@ -2194,9 +2194,10 @@ static void wined3d_context_vk_bind_vertex_buffers(struct wined3d_context_vk *co
     VkDeviceSize offsets[ARRAY_SIZE(state->streams)] = {0};
     VkBuffer buffers[ARRAY_SIZE(state->streams)];
     const struct wined3d_stream_state *stream;
+    const VkDescriptorBufferInfo *buffer_info;
+    struct wined3d_buffer_vk *buffer_vk;
     struct wined3d_buffer *buffer;
     unsigned int i, first, count;
-    struct wined3d_bo_vk *bo;
 
     first = 0;
     count = 0;
@@ -2206,10 +2207,11 @@ static void wined3d_context_vk_bind_vertex_buffers(struct wined3d_context_vk *co
 
         if ((buffer = stream->buffer))
         {
-            bo = &wined3d_buffer_vk(buffer)->bo;
-            wined3d_context_vk_reference_bo(context_vk, bo);
-            buffers[count] = bo->vk_buffer;
-            offsets[count] = bo->buffer_offset + stream->offset;
+            buffer_vk = wined3d_buffer_vk(buffer);
+            buffer_info = wined3d_buffer_vk_get_buffer_info(buffer_vk);
+            wined3d_context_vk_reference_bo(context_vk, &buffer_vk->bo);
+            buffers[count] = buffer_info->buffer;
+            offsets[count] = buffer_info->offset + stream->offset;
             ++count;
             continue;
         }
-- 
2.20.1




More information about the wine-devel mailing list