]> git.nega.tv - josh/narcissus/commitdiff
narcissus-gpu: Lock once when writing descriptors
authorJoshua Simmons <josh@nega.tv>
Sun, 11 Jun 2023 09:12:48 +0000 (11:12 +0200)
committerJoshua Simmons <josh@nega.tv>
Sun, 9 Jul 2023 22:08:37 +0000 (00:08 +0200)
libs/narcissus-gpu/src/backend/vulkan/mod.rs

index c55d4354a8da081d1c5cdd74780a6e286638c16c..c9e8e5103ca11dc47993b26669c3e940e377cafb 100644 (file)
@@ -2676,8 +2676,9 @@ impl Device for VulkanDevice {
                 }
             }
             TypedBind::UniformBuffer(buffers) => {
+                let buffer_pool = self.buffer_pool.lock();
                 let buffer_infos_iter = buffers.iter().map(|buffer| {
-                    let buffer = self.buffer_pool.lock().get(buffer.0).unwrap().buffer;
+                    let buffer = buffer_pool.get(buffer.0).unwrap().buffer;
                     vk::DescriptorBufferInfo {
                         buffer,
                         offset: 0,
@@ -2696,8 +2697,9 @@ impl Device for VulkanDevice {
                 }
             }
             TypedBind::StorageBuffer(buffers) => {
+                let buffer_pool = self.buffer_pool.lock();
                 let buffer_infos_iter = buffers.iter().map(|buffer| {
-                    let buffer = self.buffer_pool.lock().get(buffer.0).unwrap().buffer;
+                    let buffer = buffer_pool.get(buffer.0).unwrap().buffer;
                     vk::DescriptorBufferInfo {
                         buffer,
                         offset: 0,