From 5aa7081913d74c27d41fa16482a96b703f5380e4 Mon Sep 17 00:00:00 2001 From: Aymeric Wibo Date: Fri, 8 May 2026 10:19:15 +0200 Subject: [PATCH] device: Fix `wgpuDeviceRelease()` being called when releasing other objects --- wgpu/buffer.go | 1 - wgpu/command_encoder.go | 1 - wgpu/compute_pass_encoder.go | 1 - wgpu/queue.go | 1 - wgpu/render_pass_encoder.go | 1 - wgpu/texture.go | 1 - 6 files changed, 6 deletions(-) diff --git a/wgpu/buffer.go b/wgpu/buffer.go index d817bec..b45b822 100644 --- a/wgpu/buffer.go +++ b/wgpu/buffer.go @@ -23,7 +23,6 @@ static inline void gowebgpu_buffer_unmap(WGPUBuffer buffer, WGPUDevice device, v } static inline void gowebgpu_buffer_release(WGPUBuffer buffer, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuBufferRelease(buffer); } diff --git a/wgpu/command_encoder.go b/wgpu/command_encoder.go index c03a5af..b6df1b6 100644 --- a/wgpu/command_encoder.go +++ b/wgpu/command_encoder.go @@ -78,7 +78,6 @@ static inline void gowebgpu_command_encoder_write_timestamp(WGPUCommandEncoder c } static inline void gowebgpu_command_encoder_release(WGPUCommandEncoder commandEncoder, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuCommandEncoderRelease(commandEncoder); } diff --git a/wgpu/compute_pass_encoder.go b/wgpu/compute_pass_encoder.go index d2030d1..602fab3 100644 --- a/wgpu/compute_pass_encoder.go +++ b/wgpu/compute_pass_encoder.go @@ -16,7 +16,6 @@ static inline void gowebgpu_compute_pass_encoder_end(WGPUComputePassEncoder comp } static inline void gowebgpu_compute_pass_encoder_release(WGPUComputePassEncoder computePassEncoder, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuComputePassEncoderRelease(computePassEncoder); } diff --git a/wgpu/queue.go b/wgpu/queue.go index cbde757..3f34d79 100644 --- a/wgpu/queue.go +++ b/wgpu/queue.go @@ -23,7 +23,6 @@ static inline void gowebgpu_queue_write_texture(WGPUQueue queue, WGPUImageCopyTe } static inline void gowebgpu_queue_release(WGPUQueue queue, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuQueueRelease(queue); } diff --git a/wgpu/render_pass_encoder.go b/wgpu/render_pass_encoder.go index fa2603b..53b102b 100644 --- a/wgpu/render_pass_encoder.go +++ b/wgpu/render_pass_encoder.go @@ -16,7 +16,6 @@ static inline void gowebgpu_render_pass_encoder_end(WGPURenderPassEncoder render } static inline void gowebgpu_render_pass_encoder_release(WGPURenderPassEncoder renderPassEncoder, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuRenderPassEncoderRelease(renderPassEncoder); } diff --git a/wgpu/texture.go b/wgpu/texture.go index 6cbab18..6bc421f 100644 --- a/wgpu/texture.go +++ b/wgpu/texture.go @@ -18,7 +18,6 @@ static inline WGPUTextureView gowebgpu_texture_create_view(WGPUTexture texture, } static inline void gowebgpu_texture_release(WGPUTexture texture, WGPUDevice device) { - wgpuDeviceRelease(device); wgpuTextureRelease(texture); }