Skip to content
Snippets Groups Projects
Commit 8900a919 authored by Nicolas Dandrimont's avatar Nicolas Dandrimont
Browse files

from_disk.Directory: fix some random bugs found when using the API

parent a8e919ab
No related branches found
No related tags found
No related merge requests found
......@@ -309,7 +309,7 @@ class Directory(MerkleNode):
return super().__getitem__(key)
else:
key1, key2 = key.split(b'/', 1)
return super().__getitem__(key1)[key2]
return self.__getitem__(key1)[key2]
def __setitem__(self, key, value):
if not isinstance(key, bytes):
......@@ -327,7 +327,7 @@ class Directory(MerkleNode):
return super().__setitem__(key, value)
else:
key1, key2 = key.rsplit(b'/', 1)
self[key1].add_child(key2, value)
self[key1].__setitem__(key2, value)
def __delitem__(self, key):
if not isinstance(key, bytes):
......@@ -337,10 +337,10 @@ class Directory(MerkleNode):
super().__delitem__(key)
else:
key1, key2 = key.rsplit(b'/', 1)
del super().__getitem__(key1)[key2]
del self[key1][key2]
def __repr__(self):
return 'Directory(%s, id=%s)' % (
self.data['name'],
id_to_str(self.hash) if self.hash else '?',
return 'Directory(id=%s, entries=[%s])' % (
id_to_str(self.hash),
', '.join(str(entry) for entry in self),
)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment