Make Callable not crash on call when the object has been freed

Also add a GDScript test for this case.
This commit is contained in:
George Marques
2021-05-24 14:18:39 -03:00
parent ffdb3cccd2
commit ea44744e2d
3 changed files with 20 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
func test():
var node := Node.new()
var inside_tree = node.is_inside_tree
node.free()
inside_tree.call()

View File

@@ -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.