You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-06 12:20:30 +00:00
Remove useless check in GDScript
The removed check was adding a protection for the case where a `Reference` has not yet got its reference count initialized and a script is called on it. That would cause the object to be released after the call. The removed code was constructing the `Variant` via the `Object` constructor so it didn't deal with the reference count and so the release was prevented. However, `Variant` no longer works that way so that check was useless. Now it's just illegal to run GDScript on a Reference whose reference count has not been initialized.
This commit is contained in:
@@ -374,12 +374,7 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (p_instance) {
|
if (p_instance) {
|
||||||
if (p_instance->base_ref && static_cast<Reference *>(p_instance->owner)->is_referenced()) {
|
|
||||||
|
|
||||||
self = REF(static_cast<Reference *>(p_instance->owner));
|
|
||||||
} else {
|
|
||||||
self = p_instance->owner;
|
self = p_instance->owner;
|
||||||
}
|
|
||||||
script = p_instance->script.ptr();
|
script = p_instance->script.ptr();
|
||||||
} else {
|
} else {
|
||||||
script = _script;
|
script = _script;
|
||||||
|
|||||||
Reference in New Issue
Block a user