Use os.replace instead of os.rename
On Windows os.replace sets the MOVEFILE_REPLACE_EXISTING flag for MoveFileEx. On POSIX it's the same as os.rename.
This commit is contained in:
parent
5c2075cb6c
commit
b8126f8d24
@ -404,7 +404,7 @@ class Collection(BaseCollection):
|
|||||||
else:
|
else:
|
||||||
os.fsync(tmp.fileno())
|
os.fsync(tmp.fileno())
|
||||||
tmp.close()
|
tmp.close()
|
||||||
os.rename(tmp.name, path)
|
os.replace(tmp.name, path)
|
||||||
except:
|
except:
|
||||||
tmp.close()
|
tmp.close()
|
||||||
os.remove(tmp.name)
|
os.remove(tmp.name)
|
||||||
@ -574,7 +574,7 @@ class Collection(BaseCollection):
|
|||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def move(cls, item, to_collection, to_href):
|
def move(cls, item, to_collection, to_href):
|
||||||
os.rename(
|
os.replace(
|
||||||
path_to_filesystem(item.collection._filesystem_path, item.href),
|
path_to_filesystem(item.collection._filesystem_path, item.href),
|
||||||
path_to_filesystem(to_collection._filesystem_path, to_href))
|
path_to_filesystem(to_collection._filesystem_path, to_href))
|
||||||
cls._sync_directory(to_collection._filesystem_path)
|
cls._sync_directory(to_collection._filesystem_path)
|
||||||
|
Loading…
Reference in New Issue
Block a user