From 7ebcccd8a2cfb16a25677e1f1932e6c5aeb8f4be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Jastrz=C4=99bski?= Date: Thu, 13 Feb 2014 18:35:17 +0100 Subject: [PATCH] Replaced os.rename with atomic os.replace This should eliminate last problems with file locks on Windows --- kcc/cbxarchive.py | 2 +- kcc/comic2ebook.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/kcc/cbxarchive.py b/kcc/cbxarchive.py index eb2f4da..71ef0c6 100644 --- a/kcc/cbxarchive.py +++ b/kcc/cbxarchive.py @@ -104,7 +104,7 @@ class CBxArchive: for f in os.listdir(os.path.join(targetdir, adir[0])): # If directory names contain UTF-8 chars shutil.move can't clean up the mess alone if os.path.isdir(os.path.join(targetdir, f)): - os.rename(os.path.join(targetdir, adir[0], f), os.path.join(targetdir, adir[0], f + '-A')) + os.replace(os.path.join(targetdir, adir[0], f), os.path.join(targetdir, adir[0], f + '-A')) f += '-A' move(os.path.join(targetdir, adir[0], f), targetdir) os.rmdir(os.path.join(targetdir, adir[0])) diff --git a/kcc/comic2ebook.py b/kcc/comic2ebook.py index 8de6d1c..aed8163 100755 --- a/kcc/comic2ebook.py +++ b/kcc/comic2ebook.py @@ -673,7 +673,7 @@ def sanitizeTree(filetree): newKey = os.path.join(root, slugified + splitname[1]) key = os.path.join(root, name) if key != newKey: - os.rename(key, newKey) + os.replace(key, newKey) for name in dirs: if name.startswith('.'): os.remove(os.path.join(root, name)) @@ -686,7 +686,7 @@ def sanitizeTree(filetree): newKey = os.path.join(root, slugified) key = os.path.join(root, name) if key != newKey: - os.rename(key, newKey) + os.replace(key, newKey) return chapterNames