From e772d70e0542fbe4a7d05386def9b20615675144 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Mon, 30 Jan 2023 03:31:27 +0100 Subject: [PATCH] cleaner FileLikeWrapper with own __init__ --- src/borg/crypto/file_integrity.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/borg/crypto/file_integrity.py b/src/borg/crypto/file_integrity.py index 1dd77b7cd..33b503a66 100644 --- a/src/borg/crypto/file_integrity.py +++ b/src/borg/crypto/file_integrity.py @@ -13,6 +13,9 @@ logger = create_logger() class FileLikeWrapper: + def __init__(self, fd): + self.fd = fd + def __enter__(self): self.fd.__enter__() return self @@ -59,7 +62,7 @@ class FileHashingWrapper(FileLikeWrapper): FACTORY: Callable = None def __init__(self, backing_fd, write): - self.fd = backing_fd + super().__init__(backing_fd) self.writing = write self.hash = self.FACTORY() @@ -142,7 +145,8 @@ class IntegrityCheckedFile(FileLikeWrapper): # TODO: When we're reading but don't have any digests, i.e. no integrity file existed, # TODO: then we could just short-circuit. - self.fd = self.hasher = hash_cls(backing_fd=self.file_fd, write=write) + self.hasher = hash_cls(backing_fd=self.file_fd, write=write) + super().__init__(self.hasher) self.hash_filename(filename) def load_integrity_data(self, path, integrity_data):