diff options
author | George Marques <george@gmarqu.es> | 2021-05-24 14:18:39 -0300 |
---|---|---|
committer | George Marques <george@gmarqu.es> | 2021-05-24 14:23:02 -0300 |
commit | ea44744e2daf512ac97ba7176d1e65d77b4f8042 (patch) | |
tree | 4a19de4047b568b764a31212a02df2b54677aa06 /modules/gdscript/tests/scripts/runtime/errors | |
parent | ffdb3cccd2a80417475826151d93529893809850 (diff) |
Make Callable not crash on call when the object has been freed
Also add a GDScript test for this case.
Diffstat (limited to 'modules/gdscript/tests/scripts/runtime/errors')
-rw-r--r-- | modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.gd | 5 | ||||
-rw-r--r-- | modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.out | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.gd b/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.gd new file mode 100644 index 0000000000..10780b5379 --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.gd @@ -0,0 +1,5 @@ +func test(): + var node := Node.new() + var inside_tree = node.is_inside_tree + node.free() + inside_tree.call() diff --git a/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.out b/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.out new file mode 100644 index 0000000000..e585c374e2 --- /dev/null +++ b/modules/gdscript/tests/scripts/runtime/errors/callable_call_after_free_object.out @@ -0,0 +1,6 @@ +GDTEST_RUNTIME_ERROR +>> SCRIPT ERROR +>> on function: test() +>> runtime/errors/callable_call_after_free_object.gd +>> 5 +>> Attempt to call function 'null::is_inside_tree (Callable)' on a null instance. |