Merge pull request #41830 from RandomShaper/fix_40353_3.2

Avoid warning about harmless unfulfilled yields (3.2)
This commit is contained in:
Rémi Verschelde 2020-10-01 14:17:56 +02:00 committed by GitHub
commit b83f9d47a0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -975,8 +975,10 @@ GDScript::~GDScript() {
GDScriptLanguage::get_singleton()->lock->lock(); GDScriptLanguage::get_singleton()->lock->lock();
} }
while (SelfList<GDScriptFunctionState> *E = pending_func_states.first()) { while (SelfList<GDScriptFunctionState> *E = pending_func_states.first()) {
E->self()->_clear_stack(); // Order matters since clearing the stack may already cause
// the GDSCriptFunctionState to be destroyed and thus removed from the list.
pending_func_states.remove(E); pending_func_states.remove(E);
E->self()->_clear_stack();
} }
if (GDScriptLanguage::get_singleton()->lock) { if (GDScriptLanguage::get_singleton()->lock) {
GDScriptLanguage::get_singleton()->lock->unlock(); GDScriptLanguage::get_singleton()->lock->unlock();
@ -1404,8 +1406,10 @@ GDScriptInstance::~GDScriptInstance() {
#endif #endif
while (SelfList<GDScriptFunctionState> *E = pending_func_states.first()) { while (SelfList<GDScriptFunctionState> *E = pending_func_states.first()) {
E->self()->_clear_stack(); // Order matters since clearing the stack may already cause
// the GDSCriptFunctionState to be destroyed and thus removed from the list.
pending_func_states.remove(E); pending_func_states.remove(E);
E->self()->_clear_stack();
} }
if (script.is_valid() && owner) { if (script.is_valid() && owner) {