diff --git a/tools/python/jwutils/misc.py b/tools/python/jwutils/misc.py index 3b243f6..e1f9781 100644 --- a/tools/python/jwutils/misc.py +++ b/tools/python/jwutils/misc.py @@ -19,6 +19,16 @@ def silentremove(filename): #export if e.errno != errno.ENOENT: raise # re-raise exception if a different error occurred +def update_symlink(target, link_name): + try: + os.symlink(target, link_name) + except OSError as e: + if e.errno == errno.EEXIST: + os.remove(link_name) + os.symlink(target, link_name) + else: + raise e + def pad(token: str, total_size: int, right_align: bool = False) -> str: add = total_size - len(token) if add <= 0: