diff --git a/src/video_core/renderer_opengl/gl_shader_util.cpp b/src/video_core/renderer_opengl/gl_shader_util.cpp
index f83ad0a5b2..a0d9d10ef0 100644
--- a/src/video_core/renderer_opengl/gl_shader_util.cpp
+++ b/src/video_core/renderer_opengl/gl_shader_util.cpp
@@ -17,6 +17,7 @@ static OGLProgram LinkSeparableProgram(GLuint shader) {
     glProgramParameteri(program.handle, GL_PROGRAM_SEPARABLE, GL_TRUE);
     glAttachShader(program.handle, shader);
     glLinkProgram(program.handle);
+    glDetachShader(program.handle, shader);
     if (!Settings::values.renderer_debug) {
         return program;
     }