1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-05 12:10:55 +00:00

Allow GDExtension to register unexposed class.

This commit is contained in:
Daylily-Zeleen
2022-12-20 11:36:25 +08:00
parent fa3428ff25
commit 41ffe5461f
6 changed files with 35 additions and 1 deletions

View File

@@ -1674,7 +1674,14 @@ void ClassDB::register_extension_class(ObjectGDExtension *p_extension) {
c.inherits = parent->name;
c.class_ptr = parent->class_ptr;
c.inherits_ptr = parent;
c.exposed = true;
c.exposed = p_extension->is_exposed;
if (c.exposed) {
// The parent classes should be exposed if it has an exposed child class.
while (parent && !parent->exposed) {
parent->exposed = true;
parent = classes.getptr(parent->name);
}
}
classes[p_extension->class_name] = c;
}