summaryrefslogtreecommitdiffstats
path: root/modules/gdscript/gdscript_compiler.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-04-25 09:58:17 +0200
committerRémi Verschelde <rverschelde@gmail.com>2023-04-25 09:58:17 +0200
commit15d952147c5eb3e62eb1d046971b8c9f3d84713d (patch)
treec026cd203909305c0f4c96e2a01f60530c6540a7 /modules/gdscript/gdscript_compiler.cpp
parentbe00dcd72410fa0a62a22a393e6eda1d17788bb6 (diff)
parent2f4168daeba6e70de51bb2abbad1cc0b0bc54fe4 (diff)
downloadredot-engine-15d952147c5eb3e62eb1d046971b8c9f3d84713d.tar.gz
Merge pull request #74101 from RandomShaper/fix_gds_obj_temps
Fix edge cases of object lifetime when signals involved
Diffstat (limited to 'modules/gdscript/gdscript_compiler.cpp')
-rw-r--r--modules/gdscript/gdscript_compiler.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/modules/gdscript/gdscript_compiler.cpp b/modules/gdscript/gdscript_compiler.cpp
index 5413eadf60..9e5c83d08c 100644
--- a/modules/gdscript/gdscript_compiler.cpp
+++ b/modules/gdscript/gdscript_compiler.cpp
@@ -1665,6 +1665,7 @@ Error GDScriptCompiler::_parse_block(CodeGen &codegen, const GDScriptParser::Sui
Error err = OK;
GDScriptCodeGenerator *gen = codegen.generator;
+ gen->clean_temporaries();
codegen.start_block();
if (p_add_locals) {
@@ -1967,6 +1968,8 @@ Error GDScriptCompiler::_parse_block(CodeGen &codegen, const GDScriptParser::Sui
}
} break;
}
+
+ gen->clean_temporaries();
}
codegen.end_block();