Fixed the issue where the program wouldn’t close properly in binaries built with MinGW

This commit is contained in:
2025-12-05 02:08:27 +08:00
parent 5757f10cf2
commit e730a250b7
4 changed files with 24 additions and 0 deletions

View File

@ -46,9 +46,13 @@ namespace Prism
OpenGLVertexBuffer::~OpenGLVertexBuffer()
{
#ifdef __MINGW32__
glDeleteBuffers(1, &m_RendererID);
#else
Renderer::Submit([this](){
glDeleteBuffers(1, &m_RendererID);
});
#endif
}
void OpenGLVertexBuffer::SetData(void* buffer, uint32_t size, uint32_t offset)
@ -89,9 +93,13 @@ namespace Prism
OpenGLIndexBuffer::~OpenGLIndexBuffer()
{
#ifdef __MINGW32__
glDeleteBuffers(1, &m_RendererID);
#else
Renderer::Submit([this](){
glDeleteBuffers(1, &m_RendererID);
});
#endif
}
void OpenGLIndexBuffer::SetData(void* data, uint32_t size, uint32_t offset)

View File

@ -19,9 +19,13 @@ namespace Prism
OpenGLFrameBuffer::~OpenGLFrameBuffer()
{
#ifdef __MINGW32__
glDeleteFramebuffers(1, &m_RendererID);
#else
Renderer::Submit([=](){
glDeleteFramebuffers(1, &m_RendererID);
});
#endif
}
void OpenGLFrameBuffer::Bind() const

View File

@ -116,9 +116,13 @@ namespace Prism
OpenGLTexture2D::~OpenGLTexture2D()
{
#ifdef __MINGW32__
glDeleteTextures(1, &m_RendererID);
#else
Renderer::Submit([this](){
glDeleteTextures(1, &m_RendererID);
});
#endif
}
void OpenGLTexture2D::Bind(uint32_t slot) const
@ -275,9 +279,13 @@ namespace Prism
OpenGLTextureCube::~OpenGLTextureCube()
{
#ifdef __MINGW32__
glDeleteTextures(1, &m_RendererID);
#else
Renderer::Submit([this]() {
glDeleteTextures(1, &m_RendererID);
});
#endif
}
void OpenGLTextureCube::Bind(uint32_t slot) const

View File

@ -38,9 +38,13 @@ namespace Prism
OpenGLVertexArray::~OpenGLVertexArray()
{
#ifdef __MINGW32__
glDeleteVertexArrays(1, &m_RendererID);
#else
Renderer::Submit([this](){
glDeleteVertexArrays(1, &m_RendererID);
});
#endif
}
void OpenGLVertexArray::Bind() const