exists() is the wrong predicate; false-negatives on broken links

This commit is contained in:
Reid 'arrdem' McKenzie 2021-10-20 23:54:17 -06:00
parent 0503dc2df7
commit 5d471ec395

View file

@ -28,12 +28,14 @@ class Vfs(object):
elif e[0] == "link": elif e[0] == "link":
_, src, dest = e _, src, dest = e
if dest.exists() and dest.is_symlink() and dest.readlink() == dest: if dest.is_file() or dest.is_symlink():
continue if dest.is_symlink() and dest.readlink() == src:
else: continue
if dest.exists(): else:
dest.unlink() dest.unlink()
dest.symlink_to(src)
assert not dest.exists()
dest.symlink_to(src)
elif e[0] == "copy": elif e[0] == "copy":
raise NotImplementedError() raise NotImplementedError()