From 33b2195fb96f218fddb398f0c771fc2778f13131 Mon Sep 17 00:00:00 2001 From: Camilla Berglund Date: Thu, 16 Sep 2010 02:05:01 +0200 Subject: [PATCH] Formatting and comments. --- src/window.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/window.c b/src/window.c index a908ec01..12ee9f33 100644 --- a/src/window.c +++ b/src/window.c @@ -703,8 +703,6 @@ GLFWAPI void glfwOpenWindowHint(int target, int hint) GLFWAPI void glfwCloseWindow(GLFWwindow window) { - _GLFWwindow** prev; - if (!_glfwInitialized) { _glfwSetError(GLFW_NOT_INITIALIZED); @@ -715,19 +713,25 @@ GLFWAPI void glfwCloseWindow(GLFWwindow window) if (window == _glfwLibrary.cursorLockWindow) glfwEnable(window, GLFW_MOUSE_CURSOR); + // Clear the current context if this window's context is current if (window == _glfwLibrary.currentWindow) glfwMakeWindowCurrent(NULL); + // Clear the active window pointer if this is the active window if (window == _glfwLibrary.activeWindow) _glfwLibrary.activeWindow = NULL; _glfwPlatformCloseWindow(window); - prev = &_glfwLibrary.windowListHead; - while (*prev != window) - prev = &((*prev)->next); + // Unlink window from global linked list + { + _GLFWwindow** prev = &_glfwLibrary.windowListHead; - *prev = window->next; + while (*prev != window) + prev = &((*prev)->next); + + *prev = window->next; + } free(window); }