Henri Verbeet : wined3d: Move the command list reference counting functions to the end of cs.c.

Alexandre Julliard julliard at winehq.org
Thu Dec 9 15:34:30 CST 2021


Module: wine
Branch: master
Commit: 2802328cf6e5b864d68d227a893d3521741d8dc4
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2802328cf6e5b864d68d227a893d3521741d8dc4

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Thu Dec  9 21:17:28 2021 +0100

wined3d: Move the command list reference counting functions to the end of cs.c.

These are part of the public API, so there's not need for them to be at
the start of the file.

Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wined3d/cs.c | 120 +++++++++++++++++++++++++++---------------------------
 1 file changed, 60 insertions(+), 60 deletions(-)

diff --git a/dlls/wined3d/cs.c b/dlls/wined3d/cs.c
index da32e1c2804..2889b3ec38c 100644
--- a/dlls/wined3d/cs.c
+++ b/dlls/wined3d/cs.c
@@ -80,66 +80,6 @@ struct wined3d_command_list
     struct wined3d_sampler **samplers;
 };
 
-static void wined3d_command_list_destroy_object(void *object)
-{
-    struct wined3d_command_list *list = object;
-    SIZE_T i;
-
-    TRACE("list %p.\n", list);
-
-    for (i = 0; i < list->upload_count; ++i)
-        heap_free(list->uploads[i].sysmem);
-
-    heap_free(list);
-}
-
-ULONG CDECL wined3d_command_list_incref(struct wined3d_command_list *list)
-{
-    ULONG refcount = InterlockedIncrement(&list->refcount);
-
-    TRACE("%p increasing refcount to %u.\n", list, refcount);
-
-    return refcount;
-}
-
-ULONG CDECL wined3d_command_list_decref(struct wined3d_command_list *list)
-{
-    ULONG refcount = InterlockedDecrement(&list->refcount);
-    struct wined3d_device *device = list->device;
-
-    TRACE("%p decreasing refcount to %u.\n", list, refcount);
-
-    if (!refcount)
-    {
-        SIZE_T i;
-
-        for (i = 0; i < list->command_list_count; ++i)
-            wined3d_command_list_decref(list->command_lists[i]);
-        for (i = 0; i < list->resource_count; ++i)
-            wined3d_resource_decref(list->resources[i]);
-        for (i = 0; i < list->upload_count; ++i)
-            wined3d_resource_decref(list->uploads[i].resource);
-        for (i = 0; i < list->query_count; ++i)
-            wined3d_query_decref(list->queries[i].query);
-        for (i = 0; i < list->blend_state_count; ++i)
-            wined3d_blend_state_decref(list->blend_states[i]);
-        for (i = 0; i < list->rasterizer_state_count; ++i)
-            wined3d_rasterizer_state_decref(list->rasterizer_states[i]);
-        for (i = 0; i < list->depth_stencil_state_count; ++i)
-            wined3d_depth_stencil_state_decref(list->depth_stencil_states[i]);
-        for (i = 0; i < list->shader_count; ++i)
-            wined3d_shader_decref(list->shaders[i]);
-        for (i = 0; i < list->sampler_count; ++i)
-            wined3d_sampler_decref(list->samplers[i]);
-
-        wined3d_mutex_lock();
-        wined3d_cs_destroy_object(device->cs, wined3d_command_list_destroy_object, list);
-        wined3d_mutex_unlock();
-    }
-
-    return refcount;
-}
-
 static void invalidate_client_address(struct wined3d_resource *resource)
 {
     struct wined3d_client_resource *client = &resource->client;
@@ -4150,3 +4090,63 @@ HRESULT CDECL wined3d_deferred_context_record_command_list(struct wined3d_device
 
     return S_OK;
 }
+
+static void wined3d_command_list_destroy_object(void *object)
+{
+    struct wined3d_command_list *list = object;
+    SIZE_T i;
+
+    TRACE("list %p.\n", list);
+
+    for (i = 0; i < list->upload_count; ++i)
+        heap_free(list->uploads[i].sysmem);
+
+    heap_free(list);
+}
+
+ULONG CDECL wined3d_command_list_incref(struct wined3d_command_list *list)
+{
+    ULONG refcount = InterlockedIncrement(&list->refcount);
+
+    TRACE("%p increasing refcount to %u.\n", list, refcount);
+
+    return refcount;
+}
+
+ULONG CDECL wined3d_command_list_decref(struct wined3d_command_list *list)
+{
+    ULONG refcount = InterlockedDecrement(&list->refcount);
+    struct wined3d_device *device = list->device;
+
+    TRACE("%p decreasing refcount to %u.\n", list, refcount);
+
+    if (!refcount)
+    {
+        SIZE_T i;
+
+        for (i = 0; i < list->command_list_count; ++i)
+            wined3d_command_list_decref(list->command_lists[i]);
+        for (i = 0; i < list->resource_count; ++i)
+            wined3d_resource_decref(list->resources[i]);
+        for (i = 0; i < list->upload_count; ++i)
+            wined3d_resource_decref(list->uploads[i].resource);
+        for (i = 0; i < list->query_count; ++i)
+            wined3d_query_decref(list->queries[i].query);
+        for (i = 0; i < list->blend_state_count; ++i)
+            wined3d_blend_state_decref(list->blend_states[i]);
+        for (i = 0; i < list->rasterizer_state_count; ++i)
+            wined3d_rasterizer_state_decref(list->rasterizer_states[i]);
+        for (i = 0; i < list->depth_stencil_state_count; ++i)
+            wined3d_depth_stencil_state_decref(list->depth_stencil_states[i]);
+        for (i = 0; i < list->shader_count; ++i)
+            wined3d_shader_decref(list->shaders[i]);
+        for (i = 0; i < list->sampler_count; ++i)
+            wined3d_sampler_decref(list->samplers[i]);
+
+        wined3d_mutex_lock();
+        wined3d_cs_destroy_object(device->cs, wined3d_command_list_destroy_object, list);
+        wined3d_mutex_unlock();
+    }
+
+    return refcount;
+}




More information about the wine-cvs mailing list