Fix update execute while app exit #17543
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Objective
Fixes #17533 #16066
update execute while app is exit, if we query object in update, it will cause panic becuse these object has been recycle
this problem is caused from #14155, by fix App hanging in example window_settings. when windows all destroyed to be zero the all_invisible will be true, then cause update execute after app exit.
Solution
before update check app state is exit. if exit no execute.
another choice is to see the number of windows if it goes to zero, just make all_invisible to be false
but I think check app state is more reliable, because maybe in some case we need app to run background with no window.
for now, I just check if app is exit.