From f2cc7447103d4a231d57edaf9b3254c65f43ca4c Mon Sep 17 00:00:00 2001 From: Tim Sylvester Date: Thu, 25 May 2023 15:32:45 -0700 Subject: [PATCH] Drawable Renderer (#1570), Add uniform buffer destructor --- include/mbgl/gl/uniform_buffer_gl.hpp | 1 + src/mbgl/gl/uniform_buffer_gl.cpp | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/include/mbgl/gl/uniform_buffer_gl.hpp b/include/mbgl/gl/uniform_buffer_gl.hpp index 581ea86bc..1fda40db5 100644 --- a/include/mbgl/gl/uniform_buffer_gl.hpp +++ b/include/mbgl/gl/uniform_buffer_gl.hpp @@ -13,6 +13,7 @@ public: : UniformBuffer(other) {} UniformBufferGL(UniformBufferGL&& other) : UniformBuffer(std::move(other)) {} + ~UniformBufferGL() override; BufferID getID() const { return id; } diff --git a/src/mbgl/gl/uniform_buffer_gl.cpp b/src/mbgl/gl/uniform_buffer_gl.cpp index f6e61e6f9..6bf4f51ca 100644 --- a/src/mbgl/gl/uniform_buffer_gl.cpp +++ b/src/mbgl/gl/uniform_buffer_gl.cpp @@ -16,5 +16,12 @@ UniformBufferGL::UniformBufferGL(const void* data, std::size_t size_) MBGL_CHECK_ERROR(glBindBuffer(GL_UNIFORM_BUFFER, 0)); } +UniformBufferGL::~UniformBufferGL() { + if (id) { + MBGL_CHECK_ERROR(glDeleteBuffers(1, &id)); + id = 0; + } +} + } // namespace gl } // namespace mbgl