From 1188c79557e4256d21673031b3ffc3678247530b Mon Sep 17 00:00:00 2001 From: ReinUsesLisp Date: Tue, 26 May 2020 04:20:39 -0300 Subject: [PATCH] gl_shader_manager: Unbind GLSL program when binding a host pipeline Fixes regression in Link's Awakening caused by a075bbcf36c1f9b80c112276dc880a7c999c8a18 --- src/video_core/renderer_opengl/gl_shader_manager.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/video_core/renderer_opengl/gl_shader_manager.cpp b/src/video_core/renderer_opengl/gl_shader_manager.cpp index 96605db84a..8e754fa900 100644 --- a/src/video_core/renderer_opengl/gl_shader_manager.cpp +++ b/src/video_core/renderer_opengl/gl_shader_manager.cpp @@ -47,6 +47,10 @@ void ProgramManager::BindHostPipeline(GLuint pipeline) { old_state.geometry = 0; glDisable(GL_GEOMETRY_PROGRAM_NV); } + } else { + if (!is_graphics_bound) { + glUseProgram(0); + } } glBindProgramPipeline(pipeline); }