diff options
| author | Juan Linietsky | 2014-06-16 10:22:26 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2014-06-16 10:22:26 -0300 |
| commit | 703004f830f39adcde9b9565f1aa49d1b10e8d27 (patch) | |
| tree | b8fd669af9dee07177ff658f0ebca83aff836598 /modules/gdscript/gd_compiler.cpp | |
| parent | 64e83bfd1404ea593f0c79b478d196a3fcde42a8 (diff) | |
| download | godot-703004f830f39adcde9b9565f1aa49d1b10e8d27.tar.gz godot-703004f830f39adcde9b9565f1aa49d1b10e8d27.tar.zst godot-703004f830f39adcde9b9565f1aa49d1b10e8d27.zip | |
Diffstat (limited to 'modules/gdscript/gd_compiler.cpp')
| -rw-r--r-- | modules/gdscript/gd_compiler.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/modules/gdscript/gd_compiler.cpp b/modules/gdscript/gd_compiler.cpp index f1b7ad009..9cbbaf2fc 100644 --- a/modules/gdscript/gd_compiler.cpp +++ b/modules/gdscript/gd_compiler.cpp @@ -1330,12 +1330,17 @@ Error GDCompiler::_parse_class(GDScript *p_script,GDScript *p_owner,const GDPars } path=base.get_base_dir().plus_file(path); } - script = ResourceLoader::load(path); if (script.is_null()) { _set_error("Could not load base class: "+path,p_class); return ERR_FILE_NOT_FOUND; } + if (!script->valid) { + + _set_error("Script not fully loaded (cyclic preload?): "+path,p_class); + return ERR_BUSY; + } + //print_line("EXTENDS PATH: "+path+" script is "+itos(script.is_valid())+" indices is "+itos(script->member_indices.size())+" valid? "+itos(script->valid)); if (p_class->extends_class.size()) { @@ -1438,6 +1443,9 @@ Error GDCompiler::_parse_class(GDScript *p_script,GDScript *p_owner,const GDPars } + print_line("Script: "+p_script->get_path()+" indices: "+itos(p_script->member_indices.size())); + + for(int i=0;i<p_class->variables.size();i++) { StringName name = p_class->variables[i].identifier; |
