summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2019-05-09 13:22:42 -0400
committerGravatar GitHub2019-05-09 13:22:42 -0400
commitf69d3a63517b584f106870e7c013abdbf452bf8b (patch)
tree71424723fc1bf49db4026c304aa8b5f5c740161d
parentMerge pull request #2445 from FearlessTobi/port-4749 (diff)
parentgl_shader_disk_cache: Skip stored shader variants instead of asserting (diff)
downloadyuzu-f69d3a63517b584f106870e7c013abdbf452bf8b.tar.gz
yuzu-f69d3a63517b584f106870e7c013abdbf452bf8b.tar.xz
yuzu-f69d3a63517b584f106870e7c013abdbf452bf8b.zip
Merge pull request #2443 from ReinUsesLisp/skip-repeated-variants
gl_shader_disk_cache: Skip stored shader variants instead of asserting
-rw-r--r--src/video_core/renderer_opengl/gl_shader_disk_cache.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/video_core/renderer_opengl/gl_shader_disk_cache.cpp b/src/video_core/renderer_opengl/gl_shader_disk_cache.cpp
index ed7afc4a0..254c0d499 100644
--- a/src/video_core/renderer_opengl/gl_shader_disk_cache.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_disk_cache.cpp
@@ -475,7 +475,10 @@ void ShaderDiskCacheOpenGL::SaveUsage(const ShaderDiskCacheUsage& usage) {
475 ASSERT_MSG(it != transferable.end(), "Saving shader usage without storing raw previously"); 475 ASSERT_MSG(it != transferable.end(), "Saving shader usage without storing raw previously");
476 476
477 auto& usages{it->second}; 477 auto& usages{it->second};
478 ASSERT(usages.find(usage) == usages.end()); 478 if (usages.find(usage) != usages.end()) {
479 // Skip this variant since the shader is already stored.
480 return;
481 }
479 usages.insert(usage); 482 usages.insert(usage);
480 483
481 FileUtil::IOFile file = AppendTransferableFile(); 484 FileUtil::IOFile file = AppendTransferableFile();