diff --git a/src/video_core/renderer_vulkan/vk_pipeline_serialization.cpp b/src/video_core/renderer_vulkan/vk_pipeline_serialization.cpp index 5be012f77..996e1ca0b 100644 --- a/src/video_core/renderer_vulkan/vk_pipeline_serialization.cpp +++ b/src/video_core/renderer_vulkan/vk_pipeline_serialization.cpp @@ -517,7 +517,11 @@ u64 Shader::Gcn::FetchShaderData::Hash() const { for (const auto& attrib : attributes) { XXH64_update(state, &attrib, sizeof(attrib)); } - return XXH64_digest(state); + + const u64 hash = XXH64_digest(state); + XXH64_freeState(state); + + return hash; } u64 StageSpecialization::Hash() const { @@ -544,6 +548,7 @@ u64 StageSpecialization::Hash() const { } u64 hash = XXH64_digest(state); + XXH64_freeState(state); if (fetch_shader_data) { hash = HashCombine(hash, fetch_shader_data->Hash()); diff --git a/src/video_core/renderer_vulkan/vk_pipeline_storage.cpp b/src/video_core/renderer_vulkan/vk_pipeline_storage.cpp index 916658938..1faec1f99 100644 --- a/src/video_core/renderer_vulkan/vk_pipeline_storage.cpp +++ b/src/video_core/renderer_vulkan/vk_pipeline_storage.cpp @@ -155,7 +155,6 @@ bool DataBase::Save(BlobType type, const std::string& name, std::vector&& d auto path = cache_dir / name; return WriteVector(type, std::move(path), std::move(data)); - return true; } void DataBase::Load(BlobType type, const std::string& name, std::vector& data) {