use replace() over rename() to have cross-platform overwriting (#8148)

This commit is contained in:
Mikkel Jeppesen 2020-02-11 10:37:15 +01:00 committed by GitHub
parent 1fed214490
commit 310b2f1be4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -571,7 +571,7 @@ class MILC(object):
# Move the new config file into place atomically # Move the new config file into place atomically
if os.path.getsize(tmpfile.name) > 0: if os.path.getsize(tmpfile.name) > 0:
os.rename(tmpfile.name, str(self.config_file)) os.replace(tmpfile.name, str(self.config_file))
else: else:
self.log.warning('Config file saving failed, not replacing %s with %s.', str(self.config_file), tmpfile.name) self.log.warning('Config file saving failed, not replacing %s with %s.', str(self.config_file), tmpfile.name)