Merge pull request #83734 from MarioLiebisch/fix-extension-load-error

GDExtension: Fixed error on loading extensions
This commit is contained in:
Rémi Verschelde 2023-10-22 12:12:17 +02:00
commit 542f6e10eb
No known key found for this signature in database
GPG Key ID: C3336907360768E1
1 changed files with 9 additions and 7 deletions

View File

@ -959,13 +959,15 @@ Ref<Resource> GDExtensionResourceLoader::load(const String &p_path, const String
// object if one has already been loaded (even if caching is disabled at the resource
// loader level).
GDExtensionManager *manager = GDExtensionManager::get_singleton();
Ref<GDExtension> lib = manager->get_extension(p_path);
if (lib.is_null()) {
Error err = load_gdextension_resource(p_path, lib);
if (err != OK && r_error) {
// Errors already logged in load_gdextension_resource().
*r_error = err;
}
if (manager->is_extension_loaded(p_path)) {
return manager->get_extension(p_path);
}
Ref<GDExtension> lib;
Error err = load_gdextension_resource(p_path, lib);
if (err != OK && r_error) {
// Errors already logged in load_gdextension_resource().
*r_error = err;
}
return lib;
}