diff options
| author | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 13:26:24 -0500 |
|---|---|---|
| committer | Takoroka <137927095+Takoroka@users.noreply.github.com> | 2026-11-01 13:26:24 -0500 |
| commit | 0340b1770b5a81051e808cf563f31a73eedfa419 (patch) | |
| tree | 557e6090b2e815dbb0ebb32c89bbe0d4b4caa0f4 /src | |
| parent | 65cf07681a86cfb1edb1097d5c30031f955c2701 (diff) | |
| parent | f398ff2e17f4e86701b698e68886e09d387889af (diff) | |
Merge remote-tracking branch 'origin/fix/texture-cache-free-slots' into test/linux-all-prs
Diffstat (limited to 'src')
| -rw-r--r-- | src/video_core/texture_cache/texture_cache.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/video_core/texture_cache/texture_cache.h b/src/video_core/texture_cache/texture_cache.h index c9ee4d91de..8ff3e012e1 100644 --- a/src/video_core/texture_cache/texture_cache.h +++ b/src/video_core/texture_cache/texture_cache.h @@ -3040,6 +3040,7 @@ void TextureCache<P>::DeleteImage(ImageId image_id, bool immediate_delete) { alloc_images.erase(alloc_image_it); if (alloc_images.empty()) { image_allocs_table.erase(alloc_it); + slot_image_allocs.erase(alloc_id); } for (size_t c : active_channel_ids) { auto& channel_info = channel_storage[c]; @@ -3092,6 +3093,7 @@ void TextureCache<P>::RemoveFramebuffers(std::span<const ImageViewId> removed_vi last_framebuffer_serial = 0; } sentenced_framebuffers.Push(std::move(slot_framebuffers[framebuffer_id])); + slot_framebuffers.erase(framebuffer_id); it = framebuffers.erase(it); } else { ++it; |
