Fix a crash on quit if a non-default shader is active when quitting.

--HG--
branch : minor
This commit is contained in:
Alex Szpakowski
2017-09-23 20:23:01 -03:00
parent 5f64737956
commit 1b3745b58b
+8 -4
View File
@@ -128,10 +128,10 @@ Graphics::Graphics()
Graphics::~Graphics()
{
states.clear();
defaultFont.set(nullptr);
// Clean up standard shaders before the active shader. If we do it after,
// the active shader may try to activate a standard shader when deactivating
// itself, which will cause problems since it calls Graphics methods in the
// Graphics destructor.
for (int i = 0; i < Shader::STANDARD_MAX_ENUM; i++)
{
if (Shader::standardShaders[i])
@@ -141,6 +141,10 @@ Graphics::~Graphics()
}
}
states.clear();
defaultFont.set(nullptr);
delete streamBufferState.vb[0];
delete streamBufferState.vb[1];
delete streamBufferState.indexBuffer;