summaryrefslogtreecommitdiffstats
path: root/include/godot_cpp
diff options
context:
space:
mode:
Diffstat (limited to 'include/godot_cpp')
-rw-r--r--include/godot_cpp/classes/wrapped.hpp10
-rw-r--r--include/godot_cpp/core/class_db.hpp4
-rw-r--r--include/godot_cpp/core/method_bind.hpp2
3 files changed, 8 insertions, 8 deletions
diff --git a/include/godot_cpp/classes/wrapped.hpp b/include/godot_cpp/classes/wrapped.hpp
index 5208e4e..1dfa5a2 100644
--- a/include/godot_cpp/classes/wrapped.hpp
+++ b/include/godot_cpp/classes/wrapped.hpp
@@ -78,7 +78,7 @@ protected:
Wrapped(GodotObject *p_godot_object);
public:
- static StringName get_class_static() {
+ static StringName &get_class_static() {
static StringName string_name = StringName("Wrapped");
return string_name;
}
@@ -159,12 +159,12 @@ public:
initialized = true; \
} \
\
- static StringName get_class_static() { \
+ static StringName &get_class_static() { \
static StringName string_name = StringName(#m_class); \
return string_name; \
} \
\
- static StringName get_parent_class_static() { \
+ static StringName &get_parent_class_static() { \
return m_inherits::get_class_static(); \
} \
\
@@ -349,12 +349,12 @@ protected:
public: \
static void initialize_class() {} \
\
- static StringName get_class_static() { \
+ static StringName &get_class_static() { \
static StringName string_name = StringName(#m_class); \
return string_name; \
} \
\
- static StringName get_parent_class_static() { \
+ static StringName &get_parent_class_static() { \
return m_inherits::get_class_static(); \
} \
\
diff --git a/include/godot_cpp/core/class_db.hpp b/include/godot_cpp/core/class_db.hpp
index 0353621..634e55c 100644
--- a/include/godot_cpp/core/class_db.hpp
+++ b/include/godot_cpp/core/class_db.hpp
@@ -191,7 +191,7 @@ void ClassDB::_register_class(bool p_virtual) {
T::free, // GDNativeExtensionClassFreeInstance free_instance_func; /* this one is mandatory */
&ClassDB::get_virtual_func, // GDNativeExtensionClassGetVirtual get_virtual_func;
nullptr, // GDNativeExtensionClassGetRID get_rid;
- (void *)&cl.name, // void *class_userdata;
+ (void *)&T::get_class_static(), // void *class_userdata;
};
internal::gdn_interface->classdb_register_extension_class(internal::library, cl.name._native_ptr(), cl.parent_name._native_ptr(), &class_info);
@@ -249,7 +249,7 @@ MethodBind *ClassDB::bind_vararg_method(uint32_t p_flags, StringName p_name, M p
std::unordered_map<StringName, ClassInfo>::iterator type_it = classes.find(instance_type);
if (type_it == classes.end()) {
memdelete(bind);
- ERR_FAIL_V_MSG(nullptr, String("Class '{0}' doesn't exist.").format(instance_type));
+ ERR_FAIL_V_MSG(nullptr, String("Class '{0}' doesn't exist.").format(Array::make(instance_type)));
}
ClassInfo &type = type_it->second;
diff --git a/include/godot_cpp/core/method_bind.hpp b/include/godot_cpp/core/method_bind.hpp
index c80c040..d7d747d 100644
--- a/include/godot_cpp/core/method_bind.hpp
+++ b/include/godot_cpp/core/method_bind.hpp
@@ -121,7 +121,7 @@ public:
std::vector<PropertyInfo> vec;
// First element is return value
vec.reserve(argument_count + 1);
- for (int i = 0; i < argument_count; i++) {
+ for (int i = 0; i < argument_count + 1; i++) {
vec.push_back(get_argument_info(i - 1));
}
return vec;