proton: Remove files before trying to copy over them

If the file is a symlink, it could dereference the link and overwrite
the pointed-to file.
This commit is contained in:
Andrew Eikum 2019-07-11 15:09:20 -05:00
parent 8531ea2c9d
commit ee4510682f

6
proton
View file

@ -130,6 +130,12 @@ def makedirs(path):
def try_copy(src, dst):
try:
if os.path.isdir(dst):
dstfile = dst + "/" + os.path.basename(src)
if os.path.lexists(dstfile):
os.remove(dstfile)
elif os.path.lexists(dst):
os.remove(dst)
shutil.copy(src, dst)
except PermissionError as e:
if e.errno == errno.EPERM: