Merge pull request #48347 from Blackiris/fix-temporary-key-not-released
GDScript: Fix temporary value not released when used as a dictionary key
This commit is contained in:
commit
cdb3726fe6
1 changed files with 3 additions and 0 deletions
|
@ -971,6 +971,9 @@ GDScriptCodeGenerator::Address GDScriptCompiler::_parse_expression(CodeGen &code
|
||||||
} else {
|
} else {
|
||||||
gen->write_set(prev_base, key, assigned);
|
gen->write_set(prev_base, key, assigned);
|
||||||
}
|
}
|
||||||
|
if (key.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
|
||||||
|
gen->pop_temporary();
|
||||||
|
}
|
||||||
if (assigned.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
|
if (assigned.mode == GDScriptCodeGenerator::Address::TEMPORARY) {
|
||||||
gen->pop_temporary();
|
gen->pop_temporary();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue