Skip to content

Commit 8da71b7

Browse files
committed
fix(handler): adapt treelib calls in yaffs handler
1 parent 07e3e69 commit 8da71b7

File tree

1 file changed

+11
-11
lines changed
  • python/unblob/handlers/filesystem

1 file changed

+11
-11
lines changed

python/unblob/handlers/filesystem/yaffs.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
import attrs
1010
from structlog import get_logger
11-
from treelib import Tree
1211
from treelib.exceptions import NodeIDAbsentError
12+
from treelib.tree import Tree
1313

1414
from unblob.file_utils import (
1515
Endian,
@@ -422,13 +422,13 @@ def insert_entry(self, entry: YAFFSEntry):
422422
# or the file got truncated / rewritten.
423423
# Given that YAFFS is a log filesystem, whichever chunk comes
424424
# last takes precendence.
425-
self.file_entries.update_node(entry.object_id, data=entry)
425+
self.file_entries.update_node(str(entry.object_id), data=entry)
426426
return
427427

428428
if entry.object_id == entry.parent_obj_id:
429429
self.file_entries.create_node(
430-
entry.object_id,
431-
entry.object_id,
430+
str(entry.object_id),
431+
str(entry.object_id),
432432
data=entry,
433433
)
434434
else:
@@ -442,15 +442,15 @@ def insert_entry(self, entry: YAFFSEntry):
442442
)
443443
return
444444
self.file_entries.create_node(
445-
entry.object_id,
446-
entry.object_id,
445+
str(entry.object_id),
446+
str(entry.object_id),
447447
data=entry,
448-
parent=entry.parent_obj_id,
448+
parent=str(entry.parent_obj_id),
449449
)
450450

451451
def get_entry(self, object_id: int) -> Optional[YAFFSEntry]:
452452
try:
453-
entry = self.file_entries.get_node(object_id)
453+
entry = self.file_entries.get_node(str(object_id))
454454
if entry:
455455
return entry.data
456456
except NodeIDAbsentError:
@@ -462,8 +462,8 @@ def get_entry(self, object_id: int) -> Optional[YAFFSEntry]:
462462

463463
def resolve_path(self, entry: YAFFSEntry) -> Path:
464464
resolved_path = Path(entry.name)
465-
if self.file_entries.parent(entry.object_id) is not None:
466-
parent_entry = self.file_entries[entry.parent_obj_id].data
465+
if self.file_entries.parent(str(entry.object_id)) is not None:
466+
parent_entry = self.file_entries[str(entry.parent_obj_id)].data
467467
return self.resolve_path(parent_entry).joinpath(resolved_path)
468468
return resolved_path
469469

@@ -500,7 +500,7 @@ def extract_entry(self, entry: YAFFSEntry, fs: FileSystem):
500500
elif entry.object_type == YaffsObjectType.SYMLINK:
501501
fs.create_symlink(src=Path(entry.alias), dst=out_path)
502502
elif entry.object_type == YaffsObjectType.HARDLINK:
503-
dst_entry = self.file_entries[entry.equiv_id].data
503+
dst_entry = self.file_entries[str(entry.equiv_id)].data
504504
dst_path = self.resolve_path(dst_entry)
505505
fs.create_hardlink(src=dst_path, dst=out_path)
506506

0 commit comments

Comments
 (0)