diff options
| author | 2023-10-23 15:08:56 +0100 | |
|---|---|---|
| committer | 2023-10-23 15:08:56 +0100 | |
| commit | 68f25217b879dc53721c8ae8686505f58fd1c630 (patch) | |
| tree | c0fa15dd9476d0a5e7ba7c7000d223de01c71a98 /src/video_core/buffer_cache | |
| parent | Merge pull request #11831 from liamwhite/hosversionbetween (diff) | |
| download | yuzu-68f25217b879dc53721c8ae8686505f58fd1c630.tar.gz yuzu-68f25217b879dc53721c8ae8686505f58fd1c630.tar.xz yuzu-68f25217b879dc53721c8ae8686505f58fd1c630.zip | |
Add missing dowhile loops around FindBuffer calls
Diffstat (limited to 'src/video_core/buffer_cache')
| -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 9b2698fad..081a574e8 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() { | |||
| 1067 | 1067 | ||
| 1068 | template <class P> | 1068 | template <class P> |
| 1069 | void BufferCache<P>::DoUpdateGraphicsBuffers(bool is_indexed) { | 1069 | void BufferCache<P>::DoUpdateGraphicsBuffers(bool is_indexed) { |
| 1070 | do { | 1070 | BufferOperations([&]() { |
| 1071 | channel_state->has_deleted_buffers = false; | ||
| 1072 | if (is_indexed) { | 1071 | if (is_indexed) { |
| 1073 | UpdateIndexBuffer(); | 1072 | UpdateIndexBuffer(); |
| 1074 | } | 1073 | } |
| @@ -1082,14 +1081,16 @@ void BufferCache<P>::DoUpdateGraphicsBuffers(bool is_indexed) { | |||
| 1082 | if (current_draw_indirect) { | 1081 | if (current_draw_indirect) { |
| 1083 | UpdateDrawIndirect(); | 1082 | UpdateDrawIndirect(); |
| 1084 | } | 1083 | } |
| 1085 | } while (channel_state->has_deleted_buffers); | 1084 | }); |
| 1086 | } | 1085 | } |
| 1087 | 1086 | ||
| 1088 | template <class P> | 1087 | template <class P> |
| 1089 | void BufferCache<P>::DoUpdateComputeBuffers() { | 1088 | void BufferCache<P>::DoUpdateComputeBuffers() { |
| 1090 | UpdateComputeUniformBuffers(); | 1089 | BufferOperations([&]() { |
| 1091 | UpdateComputeStorageBuffers(); | 1090 | UpdateComputeUniformBuffers(); |
| 1092 | UpdateComputeTextureBuffers(); | 1091 | UpdateComputeStorageBuffers(); |
| 1092 | UpdateComputeTextureBuffers(); | ||
| 1093 | }); | ||
| 1093 | } | 1094 | } |
| 1094 | 1095 | ||
| 1095 | template <class P> | 1096 | template <class P> |