diff options
author | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2024-09-06 08:50:18 +0300 |
---|---|---|
committer | bruvzg <7645683+bruvzg@users.noreply.github.com> | 2024-09-06 13:22:20 +0300 |
commit | 3e936e795c8307ec741f15b6373b7d3f4c8ab812 (patch) | |
tree | 2737533374fcfa177b8f26112c4f6a8511d79645 /drivers/unix/dir_access_unix.cpp | |
parent | 835808ed8fa992c961d6989f0a0c48ed2abd69bd (diff) | |
download | redot-engine-3e936e795c8307ec741f15b6373b7d3f4c8ab812.tar.gz |
Fix renaming directory symlinks on Linux.
Diffstat (limited to 'drivers/unix/dir_access_unix.cpp')
-rw-r--r-- | drivers/unix/dir_access_unix.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/unix/dir_access_unix.cpp b/drivers/unix/dir_access_unix.cpp index a4208829b7..489181a025 100644 --- a/drivers/unix/dir_access_unix.cpp +++ b/drivers/unix/dir_access_unix.cpp @@ -397,12 +397,18 @@ Error DirAccessUnix::rename(String p_path, String p_new_path) { } p_path = fix_path(p_path); + if (p_path.ends_with("/")) { + p_path = p_path.left(-1); + } if (p_new_path.is_relative_path()) { p_new_path = get_current_dir().path_join(p_new_path); } p_new_path = fix_path(p_new_path); + if (p_new_path.ends_with("/")) { + p_new_path = p_new_path.left(-1); + } return ::rename(p_path.utf8().get_data(), p_new_path.utf8().get_data()) == 0 ? OK : FAILED; } |