FileSystem dock: Improve duplicate check for directory paths
Supersedes and closes #30225.
This commit is contained in:
parent
d6d487d7f7
commit
c5ea4b27f9
|
@ -1324,14 +1324,14 @@ void FileSystemDock::_duplicate_operation_confirm() {
|
|||
return;
|
||||
}
|
||||
|
||||
String new_path;
|
||||
String base_dir = to_duplicate.path.get_base_dir();
|
||||
if (to_duplicate.is_file) {
|
||||
new_path = base_dir.plus_file(new_name);
|
||||
} else {
|
||||
new_path = base_dir.substr(0, base_dir.find_last("/")).plus_file(new_name);
|
||||
// get_base_dir() returns "some/path" if the original path was "some/path/", so work it around.
|
||||
if (to_duplicate.path.ends_with("/")) {
|
||||
base_dir = base_dir.get_base_dir();
|
||||
}
|
||||
|
||||
String new_path = base_dir.plus_file(new_name);
|
||||
|
||||
//Present a more user friendly warning for name conflict
|
||||
DirAccess *da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
|
||||
if (da->file_exists(new_path) || da->dir_exists(new_path)) {
|
||||
|
|
Loading…
Reference in New Issue