diff --git a/src/video_core/query_cache/bank_base.h b/src/video_core/query_cache/bank_base.h index 4209270917..44769ea971 100644 --- a/src/video_core/query_cache/bank_base.h +++ b/src/video_core/query_cache/bank_base.h @@ -82,6 +82,7 @@ public: size_t new_index = bank_indices.front(); bank_indices.pop_front(); bank_pool[new_index].Reset(); + bank_indices.push_back(new_index); return new_index; } size_t new_index = bank_pool.size(); diff --git a/src/video_core/renderer_vulkan/vk_query_cache.cpp b/src/video_core/renderer_vulkan/vk_query_cache.cpp index 17b2587ad9..2edaafa7ef 100644 --- a/src/video_core/renderer_vulkan/vk_query_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_query_cache.cpp @@ -506,6 +506,7 @@ private: SetAccumulationValue(query->value); Free(index); }); + rasterizer->SyncOperation(std::move(func)); } template