forked from DRMTalks/devine
Use shutil.move to move data instead of Path.rename
Path.rename() cannot move data to different drives. It can only rename the path reference on the same file system. However, shutil.move() will move the data while also changing it's name.
This commit is contained in:
parent
b25e6c5ce5
commit
bb9e85d777
|
@ -1,5 +1,6 @@
|
||||||
import logging
|
import logging
|
||||||
import sys
|
import sys
|
||||||
|
import shutil
|
||||||
import tkinter.filedialog
|
import tkinter.filedialog
|
||||||
from collections import defaultdict
|
from collections import defaultdict
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
@ -243,7 +244,7 @@ def add(ctx: click.Context, profile: str, service: str, cookie: Optional[str] =
|
||||||
if final_path.exists():
|
if final_path.exists():
|
||||||
log.error(f"A Cookie file for the Profile {profile} on {service} already exists.")
|
log.error(f"A Cookie file for the Profile {profile} on {service} already exists.")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
cookie = cookie.rename(final_path)
|
shutil.move(cookie, final_path)
|
||||||
log.info(f"Moved Cookie file to: {cookie}")
|
log.info(f"Moved Cookie file to: {cookie}")
|
||||||
|
|
||||||
if credential:
|
if credential:
|
||||||
|
|
|
@ -5,6 +5,7 @@ import logging
|
||||||
import math
|
import math
|
||||||
import random
|
import random
|
||||||
import re
|
import re
|
||||||
|
import shutil
|
||||||
import sys
|
import sys
|
||||||
import time
|
import time
|
||||||
import traceback
|
import traceback
|
||||||
|
@ -674,7 +675,7 @@ class dl:
|
||||||
final_dir.mkdir(parents=True, exist_ok=True)
|
final_dir.mkdir(parents=True, exist_ok=True)
|
||||||
final_path = final_dir / f"{final_filename}{muxed_path.suffix}"
|
final_path = final_dir / f"{final_filename}{muxed_path.suffix}"
|
||||||
|
|
||||||
muxed_path.rename(final_path)
|
shutil.move(muxed_path, final_path)
|
||||||
self.log.info(f" + Moved to {final_path}")
|
self.log.info(f" + Moved to {final_path}")
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import asyncio
|
import asyncio
|
||||||
import logging
|
import logging
|
||||||
import re
|
import re
|
||||||
|
import shutil
|
||||||
import subprocess
|
import subprocess
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
@ -312,7 +313,8 @@ class Track:
|
||||||
if not self.path:
|
if not self.path:
|
||||||
return False
|
return False
|
||||||
target = Path(target)
|
target = Path(target)
|
||||||
ok = self.path.rename(target).resolve() == target.resolve()
|
|
||||||
|
ok = Path(shutil.move(self.path, target)).resolve() == target.resolve()
|
||||||
if ok:
|
if ok:
|
||||||
self.path = target
|
self.path = target
|
||||||
return ok
|
return ok
|
||||||
|
@ -326,7 +328,7 @@ class Track:
|
||||||
if not target.exists() or not self.path:
|
if not target.exists() or not self.path:
|
||||||
return False
|
return False
|
||||||
self.path.unlink()
|
self.path.unlink()
|
||||||
ok = target.rename(self.path) == self.path
|
ok = Path(shutil.move(target, self.path)).resolve() == self.path.resolve()
|
||||||
if not ok:
|
if not ok:
|
||||||
return False
|
return False
|
||||||
return self.move(target)
|
return self.move(target)
|
||||||
|
|
Loading…
Reference in New Issue