diff --git a/include/renderer_gl/renderer_gl.hpp b/include/renderer_gl/renderer_gl.hpp index 41dba6eb..2471bae0 100644 --- a/include/renderer_gl/renderer_gl.hpp +++ b/include/renderer_gl/renderer_gl.hpp @@ -95,7 +95,6 @@ class RendererGL final : public Renderer { for (auto& it : programCache) { CachedProgram& cachedProgram = it.second; cachedProgram.program.free(); - glDeleteBuffers(1, &cachedProgram.uboBinding); } for (auto& it : vertexShaderCache) { diff --git a/src/core/renderer_gl/renderer_gl.cpp b/src/core/renderer_gl/renderer_gl.cpp index 6f0cab1a..5cd7cced 100644 --- a/src/core/renderer_gl/renderer_gl.cpp +++ b/src/core/renderer_gl/renderer_gl.cpp @@ -944,7 +944,7 @@ bool RendererGL::prepareForDraw(ShaderUnit& shaderUnit, bool isImmediateMode) { // If the optional is false, we have never tried to recompile the shader before. Try to recompile it and see if it works. if (!shader.has_value()) { // Initialize shader to a "null" shader (handle == 0) - *shader = OpenGL::Shader(); + shader = OpenGL::Shader(); std::string picaShaderSource = PICA::ShaderGen::decompileShader( shaderUnit.vs, *emulatorConfig, shaderUnit.vs.entrypoint, PICA::ShaderGen::API::GL, PICA::ShaderGen::Language::GLSL