1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-16 14:00:40 +00:00

Prevent using name with leading dot when create/rename/duplicate scene/folder/script/resource

Fixes #62497
This commit is contained in:
James
2022-07-12 15:51:18 +08:00
parent e22335ec72
commit 6782738a85
7 changed files with 47 additions and 6 deletions

View File

@@ -51,15 +51,22 @@ String DirectoryCreateDialog::_validate_path(const String &p_path) const {
return TTR("Folder name cannot be empty.");
}
if (p_path.find("\\") != -1 || p_path.find(":") != -1 || p_path.find("*") != -1 ||
p_path.find("|") != -1 || p_path.find(">") != -1) {
return TTR("Folder name contains invalid characters.");
}
const Vector<String> parts = p_path.split("/");
for (int i = 0; i < parts.size(); i++) {
const String part = parts[i];
if (part.empty()) {
return TTR("Folder name cannot be empty.");
}
if (p_path.find("\\") != -1 || p_path.find(":") != -1 || p_path.find("*") != -1 ||
p_path.find("|") != -1 || p_path.find(">") != -1 || p_path.ends_with(".") || p_path.ends_with(" ")) {
return TTR("Folder name contains invalid characters.");
if (part.ends_with(" ") || part[0] == ' ') {
return TTR("Folder name cannot begin or end with a space.");
}
if (part[0] == '.') {
return TTR("Folder name cannot begin with a dot.");
}
}