diff options
| author | liamwhite <liamwhite@users.noreply.github.com> | 2023-10-29 11:25:09 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-10-29 11:25:09 -0400 |
| commit | 257dfeaccfc1a411ceacd3cb60397038bc9de29f (patch) | |
| tree | 89df369818cce70e52b98181af163927cae5faa9 /src/video_core/buffer_cache/buffer_cache.h | |
| parent | 289ac46210bca30c1c7b69cfe3338f003e862333 (diff) | |
| parent | 5d26c3791bafb7e8a65fd72e5bb6a83569f1ad80 (diff) | |
Merge pull request #11859 from Kelebek1/compute_findbuffer
Add missing loop around compute FindBuffer calls
Diffstat (limited to 'src/video_core/buffer_cache/buffer_cache.h')
| -rw-r--r-- | src/video_core/buffer_cache/buffer_cache.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 9b2698fad2..081a574e8b 100644 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h @@ -1067,8 +1067,7 @@ void BufferCache<P>::BindHostComputeTextureBuffers() { template <class P> void BufferCache<P>::DoUpdateGraphicsBuffers(bool is_indexed) { - do { - channel_state->has_deleted_buffers = false; + BufferOperations([&]() { if (is_indexed) { UpdateIndexBuffer(); } @@ -1082,14 +1081,16 @@ void BufferCache<P>::DoUpdateGraphicsBuffers(bool is_indexed) { if (current_draw_indirect) { UpdateDrawIndirect(); } - } while (channel_state->has_deleted_buffers); + }); } template <class P> void BufferCache<P>::DoUpdateComputeBuffers() { - UpdateComputeUniformBuffers(); - UpdateComputeStorageBuffers(); - UpdateComputeTextureBuffers(); + BufferOperations([&]() { + UpdateComputeUniformBuffers(); + UpdateComputeStorageBuffers(); + UpdateComputeTextureBuffers(); + }); } template <class P> |
