Orchestrator Signal and Functions are initialized with incorrect usage flags #255
Labels
bug/confirmed
Bug/regression has been confirmed.
cherrypick:2.0
Requires cherry-pick to Orchestrator 2.0
kind/bug
A bug or regression in expected behavior.
requires/godot-fix
Requires some upstream Godot change.
Milestone
Describe the bug
The
PropertyInfo
struct initializes theusage
property as7
rather than asPROPERTY_USAGE_DEFAULT
, which is6
. This seems to be a disconnect between GDExtension'sgodot-cpp
source and the upstream Godot Engine changes made in 2022.Expected behavior
Signal and Function arguments and return values should be initialized with
6
(PROPERTY_USAGE_DEFAULT).Actual behavior
Signal and Function arguments and return values should be initialized with
7
(PROPERTY_USAGE_DEFAULT + 1).How to Reproduce?
Create any Signal or Function and look at its return value or method arguments.
Godot full version
4.2.1-stable
Orchestrator version
2.0.stable
Additional information
Orchestrator can prevent this bug by simply ensuring that the
PropertyInfo
usage property is initialized using the engine'sPROPERTY_USAGE_DEFAULT
value rather than relying on the struct's initial value.We'll likely need to define a clean-up hook for existing Orchestrations to sanitize the
OScriptFunction
andOScriptSignal
definitions. This should not affect standard method data from the serialized engine.The text was updated successfully, but these errors were encountered: