copy file fallback on errors
frdel committed
Feb 10, 2026 at 15:18 UTC
4fa70fcdfbe1d3fe18aec952b027b4ba3a13a040
1 file changed
+10
-1
python/helpers/files.py
+10
-1
@@ -616,7 +616,16 @@ def move_file(relative_path: str, new_path: str):
616
abs_path = get_abs_path(relative_path)
617
new_abs_path = get_abs_path(new_path)
618
os.makedirs(os.path.dirname(new_abs_path), exist_ok=True)
619
- os.rename(abs_path, new_abs_path)
619
+ try:
620
+ os.rename(abs_path, new_abs_path)
621
+ except OSError:
622
+ # fallback to copy and delete
623
+ import shutil
624
+ shutil.copy2(abs_path, new_abs_path)
625
+ try:
626
+ os.unlink(abs_path)
627
+ except OSError:
628
+ pass
629
630
631
def safe_file_name(filename: str) -> str: