diff --git a/wgpu/src/image/raster.rs b/wgpu/src/image/raster.rs index 5c4ad3be..881e75e3 100644 --- a/wgpu/src/image/raster.rs +++ b/wgpu/src/image/raster.rs @@ -87,7 +87,7 @@ impl Cache { let hits = &self.hits; - self.map.retain(|k, memory| { + self.map.retain(|id, memory| { // Retain active allocations if let Memory::Device { allocation, .. } = memory && allocation @@ -97,17 +97,20 @@ impl Cache { return true; } - let retain = hits.contains(k); + let retain = hits.contains(id); - if !retain - && let Memory::Device { + if !retain { + log::debug!("Dropping image allocation: {id:?}"); + + if let Memory::Device { entry, bind_group, .. } = memory - { - if let Some(bind_group) = bind_group.take() { - on_drop(bind_group); - } else { - atlas.remove(entry); + { + if let Some(bind_group) = bind_group.take() { + on_drop(bind_group); + } else { + atlas.remove(entry); + } } }