Merge pull request #94975 from akien-mga/fix-reimport-textures-with-changed-settings
Fix reimporting textures after changing import project settings
This commit is contained in:
commit
0f172b1beb
1 changed files with 12 additions and 2 deletions
|
@ -438,7 +438,7 @@ bool EditorFileSystem::_test_for_reimport(const String &p_path, bool p_only_impo
|
||||||
Error err;
|
Error err;
|
||||||
Ref<FileAccess> f = FileAccess::open(p_path + ".import", FileAccess::READ, &err);
|
Ref<FileAccess> f = FileAccess::open(p_path + ".import", FileAccess::READ, &err);
|
||||||
|
|
||||||
if (f.is_null()) { //no import file, do reimport
|
if (f.is_null()) { // No import file, reimport.
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -472,10 +472,15 @@ bool EditorFileSystem::_test_for_reimport(const String &p_path, bool p_only_impo
|
||||||
break;
|
break;
|
||||||
} else if (err != OK) {
|
} else if (err != OK) {
|
||||||
ERR_PRINT("ResourceFormatImporter::load - '" + p_path + ".import:" + itos(lines) + "' error '" + error_text + "'.");
|
ERR_PRINT("ResourceFormatImporter::load - '" + p_path + ".import:" + itos(lines) + "' error '" + error_text + "'.");
|
||||||
return false; //parse error, try reimport manually (Avoid reimport loop on broken file)
|
// Parse error, skip and let user attempt manual reimport to avoid reimport loop.
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!assign.is_empty()) {
|
if (!assign.is_empty()) {
|
||||||
|
if (assign == "valid" && value.operator bool() == false) {
|
||||||
|
// Invalid import (failed previous import), skip and let user attempt manual reimport to avoid reimport loop.
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (assign.begins_with("path")) {
|
if (assign.begins_with("path")) {
|
||||||
to_check.push_back(value);
|
to_check.push_back(value);
|
||||||
} else if (assign == "files") {
|
} else if (assign == "files") {
|
||||||
|
@ -502,6 +507,11 @@ bool EditorFileSystem::_test_for_reimport(const String &p_path, bool p_only_impo
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!ResourceFormatImporter::get_singleton()->are_import_settings_valid(p_path)) {
|
||||||
|
// Reimport settings are out of sync with project settings, reimport.
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
if (importer_name == "keep" || importer_name == "skip") {
|
if (importer_name == "keep" || importer_name == "skip") {
|
||||||
return false; //keep mode, do not reimport
|
return false; //keep mode, do not reimport
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue