Explorar o código

Merge pull request #2100 from ThomasWaldmann/fix-double-magic

creating a new segment: use "xb" mode, fixes #2099
TW %!s(int64=8) %!d(string=hai) anos
pai
achega
528891aee9
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      borg/repository.py

+ 2 - 1
borg/repository.py

@@ -670,7 +670,8 @@ class LoggedIO:
                 if not os.path.exists(dirname):
                     os.mkdir(dirname)
                     sync_dir(os.path.join(self.path, 'data'))
-            self._write_fd = open(self.segment_filename(self.segment), 'ab')
+            # play safe: fail if file exists (do not overwrite existing contents, do not append)
+            self._write_fd = open(self.segment_filename(self.segment), 'xb')
             self._write_fd.write(MAGIC)
             self.offset = MAGIC_LEN
         return self._write_fd