summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorHaoyu Qiu <timothyqiu32@gmail.com>2022-02-16 15:27:41 +0800
committerHaoyu Qiu <timothyqiu32@gmail.com>2022-02-16 15:27:41 +0800
commit1262d331c0b516c76977f27a9633102ce5ca483d (patch)
tree6917b61beaf3a6fdd63bc5e32130c17392109341 /modules
parent7989149b917c096af67a0566398bee4de83993ac (diff)
Fix VisualScript crash when using Set Index node
Diffstat (limited to 'modules')
-rw-r--r--modules/visual_script/visual_script_nodes.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/modules/visual_script/visual_script_nodes.cpp b/modules/visual_script/visual_script_nodes.cpp
index e7f4e542c1..e672267b00 100644
--- a/modules/visual_script/visual_script_nodes.cpp
+++ b/modules/visual_script/visual_script_nodes.cpp
@@ -1784,10 +1784,7 @@ public:
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
bool valid;
- // *p_output[0] points to the same place as *p_inputs[2] so we need a temp to store the value before the change in the next line
- Variant temp = *p_inputs[2];
- *p_outputs[0] = *p_inputs[0];
- p_outputs[0]->set(*p_inputs[1], temp, &valid);
+ ((Variant *)p_inputs[0])->set(*p_inputs[1], *p_inputs[2], &valid);
if (!valid) {
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;