The new host program needs to be saved even if it isn't valid.

This commit is contained in:
riperiperi 2021-04-02 22:47:14 +01:00
parent ddf4b92a9c
commit 20d560e3f9

View File

@ -197,11 +197,6 @@ namespace Ryujinx.Graphics.Gpu.Shader
task.OnCompiled(hostProgram, (bool isNewProgramValid, ShaderCompileTask task) => task.OnCompiled(hostProgram, (bool isNewProgramValid, ShaderCompileTask task) =>
{ {
if (!isNewProgramValid)
{
return true;
}
// As the host program was invalidated, save the new entry in the cache. // As the host program was invalidated, save the new entry in the cache.
hostProgramBinary = HostShaderCacheEntry.Create(hostProgram.GetBinary(), new ShaderCodeHolder[] { shader }); hostProgramBinary = HostShaderCacheEntry.Create(hostProgram.GetBinary(), new ShaderCodeHolder[] { shader });
@ -365,11 +360,6 @@ namespace Ryujinx.Graphics.Gpu.Shader
task.OnCompiled(hostProgram, (bool isNewProgramValid, ShaderCompileTask task) => task.OnCompiled(hostProgram, (bool isNewProgramValid, ShaderCompileTask task) =>
{ {
if (!isNewProgramValid)
{
return true;
}
// As the host program was invalidated, save the new entry in the cache. // As the host program was invalidated, save the new entry in the cache.
hostProgramBinary = HostShaderCacheEntry.Create(hostProgram.GetBinary(), shaders); hostProgramBinary = HostShaderCacheEntry.Create(hostProgram.GetBinary(), shaders);