diff --git a/pisi/atomicoperations.py b/pisi/atomicoperations.py index 6624d1f8..e596abe7 100644 --- a/pisi/atomicoperations.py +++ b/pisi/atomicoperations.py @@ -337,9 +337,11 @@ class Install(AtomicOperation): if not os.path.exists(destdir): os.makedirs(destdir) - if os.path.islink(old_path): - if not os.path.lexists(new_path): - os.symlink(os.readlink(old_path), new_path) + if os.path.lexists(new_path): + os.unlink(new_path) + + if os.path.islink(old_path): + os.symlink(os.readlink(old_path), new_path) else: shutil.copy(old_path, new_path)