Moved window close check to shared code.

master
Camilla Berglund ago%!(EXTRA string=15 years)
parent 0ba1cf9c59
commit c6bd6a7741
  1. 19
      src/window.c
  2. 15
      src/x11/x11_window.c

@ -1039,11 +1039,13 @@ GLFWAPI void glfwSetWindowRefreshCallback(GLFWwindow window, GLFWwindowrefreshfu
//======================================================================== //========================================================================
// Poll for new window and input events // Poll for new window and input events and close any flagged windows
//======================================================================== //========================================================================
GLFWAPI void glfwPollEvents(void) GLFWAPI void glfwPollEvents(void)
{ {
_GLFWwindow* window;
if (!_glfwInitialized) if (!_glfwInitialized)
{ {
_glfwSetError(GLFW_NOT_INITIALIZED); _glfwSetError(GLFW_NOT_INITIALIZED);
@ -1051,6 +1053,21 @@ GLFWAPI void glfwPollEvents(void)
} }
_glfwPlatformPollEvents(); _glfwPlatformPollEvents();
for (window = _glfwLibrary.windowListHead; window; )
{
if (window->closed && window->windowCloseCallback)
window->closed = window->windowCloseCallback(window);
if (window->closed)
{
_GLFWwindow* next = window->next;
glfwCloseWindow(window);
window = next;
}
else
window = window->next;
}
} }

@ -1756,21 +1756,6 @@ void _glfwPlatformPollEvents(void)
window->height / 2); window->height / 2);
} }
} }
for (window = _glfwLibrary.windowListHead; window; )
{
if (window->closed && window->windowCloseCallback)
window->closed = window->windowCloseCallback(window);
if (window->closed)
{
_GLFWwindow* next = window->next;
glfwCloseWindow(window);
window = next;
}
else
window = window->next;
}
} }

Loading…
Cancel
Save