diff options
author | Rémi Verschelde <remi@verschelde.fr> | 2022-11-28 11:45:11 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-28 11:45:11 +0100 |
commit | 166066d9f74e574b68d9f9d0ba05bf42b8de2131 (patch) | |
tree | 7ccadae0c01ec2474c894cec8f4936e2804577af | |
parent | ceca46078358543a22dec85e9c9b525ddaf8110e (diff) | |
parent | 4e6068969527ae4f55adf24865d511727d1da3b4 (diff) |
Merge pull request #69259 from adamscott/fix-cyclic-reference-base-issue
Fix cyclic reference base being loaded but not valid (which is ok)
-rw-r--r-- | modules/gdscript/gdscript_cache.cpp | 2 | ||||
-rw-r--r-- | modules/gdscript/gdscript_compiler.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/modules/gdscript/gdscript_cache.cpp b/modules/gdscript/gdscript_cache.cpp index 2e7263b652..5fbdf8c432 100644 --- a/modules/gdscript/gdscript_cache.cpp +++ b/modules/gdscript/gdscript_cache.cpp @@ -260,7 +260,7 @@ Ref<GDScript> GDScriptCache::get_full_script(const String &p_path, Error &r_erro Ref<GDScript> script; r_error = OK; if (singleton->full_gdscript_cache.has(p_path)) { - script = Ref<GDScript>(singleton->full_gdscript_cache[p_path]); + script = singleton->full_gdscript_cache[p_path]; if (!p_update_from_disk) { return script; } diff --git a/modules/gdscript/gdscript_compiler.cpp b/modules/gdscript/gdscript_compiler.cpp index f0ceb42f89..103eb60da9 100644 --- a/modules/gdscript/gdscript_compiler.cpp +++ b/modules/gdscript/gdscript_compiler.cpp @@ -2284,7 +2284,7 @@ Error GDScriptCompiler::_populate_class_members(GDScript *p_script, const GDScri _set_error(vformat(R"(Could not find class "%s" in "%s".)", base->fully_qualified_name, base->path), nullptr); return ERR_COMPILATION_FAILED; } - ERR_FAIL_COND_V(!base->is_valid(), ERR_BUG); + ERR_FAIL_COND_V(!base->is_valid() && !base->reloading, ERR_BUG); } p_script->base = base; |