Преглед изворни кода

Merge pull request #3445 from ThomasWaldmann/check-hangs-fix

fix for borg check --repair malfunction, #3444 (1.1-maint)
TW пре 7 година
родитељ
комит
696f2a2d25
2 измењених фајлова са 2 додато и 2 уклоњено
  1. 1 1
      src/borg/archive.py
  2. 1 1
      src/borg/testsuite/archiver.py

+ 1 - 1
src/borg/archive.py

@@ -1457,7 +1457,7 @@ class ArchiveChecker:
             """
             item_keys = frozenset(key.encode() for key in self.manifest.item_keys)
             required_item_keys = frozenset(key.encode() for key in REQUIRED_ITEM_KEYS)
-            unpacker = RobustUnpacker(lambda item: isinstance(item, dict) and 'path' in item,
+            unpacker = RobustUnpacker(lambda item: isinstance(item, StableDict) and b'path' in item,
                                       self.manifest.item_keys)
             _state = 0
 

+ 1 - 1
src/borg/testsuite/archiver.py

@@ -3006,7 +3006,7 @@ class ArchiverCheckTestCase(ArchiverTestCaseBase):
     def test_missing_archive_item_chunk(self):
         archive, repository = self.open_archive('archive1')
         with repository:
-            repository.delete(archive.metadata.items[-5])
+            repository.delete(archive.metadata.items[0])
             repository.commit()
         self.cmd('check', self.repository_location, exit_code=1)
         self.cmd('check', '--repair', self.repository_location, exit_code=0)