You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-09 12:50:35 +00:00
Don't break parsing on missing resources
This commit is contained in:
@@ -1283,7 +1283,7 @@ Error VariantParser::_parse_dictionary(Dictionary &object, Stream *p_stream, int
|
|||||||
|
|
||||||
Variant v;
|
Variant v;
|
||||||
err = parse_value(token, v, p_stream, line, r_err_str, p_res_parser);
|
err = parse_value(token, v, p_stream, line, r_err_str, p_res_parser);
|
||||||
if (err) {
|
if (err && err != ERR_FILE_MISSING_DEPENDENCIES) {
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
object[key] = v;
|
object[key] = v;
|
||||||
|
|||||||
@@ -144,6 +144,7 @@ Error ResourceLoaderText::_parse_ext_resource(VariantParser::Stream *p_stream, R
|
|||||||
}
|
}
|
||||||
|
|
||||||
String id = token.value;
|
String id = token.value;
|
||||||
|
Error err = OK;
|
||||||
|
|
||||||
if (!ignore_resource_parsing) {
|
if (!ignore_resource_parsing) {
|
||||||
if (!ext_resources.has(id)) {
|
if (!ext_resources.has(id)) {
|
||||||
@@ -163,7 +164,7 @@ Error ResourceLoaderText::_parse_ext_resource(VariantParser::Stream *p_stream, R
|
|||||||
error = ERR_FILE_MISSING_DEPENDENCIES;
|
error = ERR_FILE_MISSING_DEPENDENCIES;
|
||||||
error_text = "[ext_resource] referenced nonexistent resource at: " + path;
|
error_text = "[ext_resource] referenced nonexistent resource at: " + path;
|
||||||
_printerr();
|
_printerr();
|
||||||
return error;
|
err = error;
|
||||||
} else {
|
} else {
|
||||||
ResourceLoader::notify_dependency_error(local_path, path, type);
|
ResourceLoader::notify_dependency_error(local_path, path, type);
|
||||||
}
|
}
|
||||||
@@ -175,7 +176,7 @@ Error ResourceLoaderText::_parse_ext_resource(VariantParser::Stream *p_stream, R
|
|||||||
error = ERR_FILE_MISSING_DEPENDENCIES;
|
error = ERR_FILE_MISSING_DEPENDENCIES;
|
||||||
error_text = "[ext_resource] referenced non-loaded resource at: " + path;
|
error_text = "[ext_resource] referenced non-loaded resource at: " + path;
|
||||||
_printerr();
|
_printerr();
|
||||||
return error;
|
err = error;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
r_res = Ref<Resource>();
|
r_res = Ref<Resource>();
|
||||||
@@ -187,7 +188,7 @@ Error ResourceLoaderText::_parse_ext_resource(VariantParser::Stream *p_stream, R
|
|||||||
return ERR_PARSE_ERROR;
|
return ERR_PARSE_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
return OK;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
Ref<PackedScene> ResourceLoaderText::_parse_node_tag(VariantParser::ResourceParser &parser) {
|
Ref<PackedScene> ResourceLoaderText::_parse_node_tag(VariantParser::ResourceParser &parser) {
|
||||||
|
|||||||
Reference in New Issue
Block a user