Explorar o código

fuse: simplify path segments loop

Thomas Waldmann %!s(int64=8) %!d(string=hai) anos
pai
achega
6f50cc3413
Modificáronse 1 ficheiros con 3 adicións e 6 borrados
  1. 3 6
      src/borg/fuse.py

+ 3 - 6
src/borg/fuse.py

@@ -153,13 +153,10 @@ class FuseOperations(llfuse.Operations):
                         continue
                         continue
                 segments = prefix + os.fsencode(os.path.normpath(item.path)).split(b'/')
                 segments = prefix + os.fsencode(os.path.normpath(item.path)).split(b'/')
                 del item.path
                 del item.path
-                num_segments = len(segments)
                 parent = 1
                 parent = 1
-                for i, segment in enumerate(segments, 1):
-                    if i == num_segments:
-                        self.process_leaf(segment, item, parent, prefix, is_dir)
-                    else:
-                        parent = self.process_inner(segment, parent)
+                for segment in segments[:-1]:
+                    parent = self.process_inner(segment, parent)
+                self.process_leaf(segments[-1], item, parent, prefix, is_dir)
 
 
     def process_leaf(self, name, item, parent, prefix, is_dir):
     def process_leaf(self, name, item, parent, prefix, is_dir):
         def version_name(name, item):
         def version_name(name, item):