Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix order of exit/close window systems (bevyengine#5558)
# Objective Fixes bevyengine#5384 and maybe other issues around window closing/app not exiting ## Solution There are three systems involved in exiting when closing a window: - `close_when_requested` asking Winit to close the window in stage `Update` - `exit_on_all_closed` exiting when no window remains opened in stage `Update` - `change_window` removing windows that are closed in stage `PostUpdate` This ordering meant that when closing a window, we had to run one more frame to actually exit. As there was no window, panics could occur in systems assuming there was a window. In case of Bevy app using a low power options, that means waiting for the timeout before actually exiting the app (60 seconds by default) This PR changes the ordering so that `exit_on_all_closed` happens after `change_window` in the same frame, so there isn't an extra frame without window
- Loading branch information