From 5d22078f3592e6b3914ec037a8dc86c5572cd868 Mon Sep 17 00:00:00 2001 From: Thomas Waldmann Date: Thu, 15 Sep 2016 14:56:11 +0200 Subject: [PATCH] fuse: add parameter check to ItemCache.get to make potential failures more clear --- src/borg/fuse.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/borg/fuse.py b/src/borg/fuse.py index 47b8568b1..8e3a8e4da 100644 --- a/src/borg/fuse.py +++ b/src/borg/fuse.py @@ -43,7 +43,10 @@ class ItemCache: return pos + self.offset def get(self, inode): - self.fd.seek(inode - self.offset, io.SEEK_SET) + offset = inode - self.offset + if offset < 0: + raise ValueError('ItemCache.get() called with an invalid inode number') + self.fd.seek(offset, io.SEEK_SET) item = next(msgpack.Unpacker(self.fd, read_size=1024)) return Item(internal_dict=item)