def __init__(self, name, num, options):
self.name = name
self.num = num
- self.size = 1
+ self.size = num if num else 1
self.length_field_packer = BaseTypes("u32")
self.limit = options["limit"] if "limit" in options else num
self.fixed = True if num else False
len(lst), kwargs[self.length_field]
)
)
-
# u8 array
- if self.packer.size == 1:
+ if self.packer.size == 1 and self.field_type == "u8":
if isinstance(lst, list):
return b"".join(lst)
return bytes(lst)
total = 0
# u8 array
- if self.packer.size == 1:
+ if self.packer.size == 1 and self.field_type == "u8":
if result[self.index] == 0:
return b"", 0
p = BaseTypes("u8", result[self.index])
self.packers.append(p)
size += p.size
-
self.size = size
self.tuple = collections.namedtuple(name, self.fields, rename=True)
types[name] = self