Browse Source

Fixed love.graphics.isCreated to properly return false if love.window.setMode failed

Alex Szpakowski 11 years ago
parent
commit
be8c19911f
1 changed files with 6 additions and 2 deletions
  1. 6 2
      src/modules/graphics/opengl/Graphics.cpp

+ 6 - 2
src/modules/graphics/opengl/Graphics.cpp

@@ -246,15 +246,19 @@ bool Graphics::setMode(int width, int height, bool &sRGB)
 
 void Graphics::unSetMode()
 {
+	if (!isCreated())
+		return;
+
 	// Window re-creation may destroy the GL context, so we must save the state.
-	if (isCreated())
-		savedState = saveState();
+	savedState = saveState();
 
 	// Unload all volatile objects. These must be reloaded after the display
 	// mode change.
 	Volatile::unloadAll();
 
 	gl.deInitContext();
+
+	created = false;
 }
 
 static void APIENTRY debugCB(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei /*len*/, const GLchar *msg, GLvoid* /*usr*/)