diff --git a/glfw/cocoa_init.m b/glfw/cocoa_init.m index 2e40db560e6..dc626ae5fd2 100644 --- a/glfw/cocoa_init.m +++ b/glfw/cocoa_init.m @@ -1021,10 +1021,9 @@ void _glfwPlatformTerminate(void) void _glfwDispatchTickCallback(void) { if (tick_lock && tick_callback) { while(true) { - bool do_call = true; + bool do_call = false; [tick_lock lock]; - if (!tick_callback_requested) do_call = false; - tick_callback_requested = false; + if (tick_callback_requested) { do_call = true; tick_callback_requested = false; } [tick_lock unlock]; if (do_call) tick_callback(tick_callback_data); else break;