Closed Namek closed 2 years ago
I also encountered this error while trying to get the Summary of a game. I managed to track the problem down to this line:
Changing it to Const(b'\x00\x00')
didn't help. I replaced it with Bytes(2)
and it worked.
I get a similar issue when trying to run the example code from the ReadMe
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 2784, in _parse
return self.subcon._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 867, in _parse
subobj = sc._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 867, in _parse
subobj = sc._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 1936, in _parse
raise ConstError("expected %r but parsed %r" % (self.value, obj))
construct.core.ConstError: expected b'`\n' but parsed b'\x00`'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "main.py", line 29, in <module>
header.parse_stream(data)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 171, in parse_stream
return self._parse(stream, context2, "(parsing)")
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 867, in _parse
subobj = sc._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 295, in _parse
return self.subcon._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 867, in _parse
subobj = sc._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 295, in _parse
return self.subcon._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/mgz/util.py", line 57, in _parse
return self.subcon._parse(new_stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 357, in _parse
return self.subcon.parse(data, context)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 158, in parse
return self.parse_stream(BytesIO(data), context, **kw)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 171, in parse_stream
return self._parse(stream, context2, "(parsing)")
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 867, in _parse
subobj = sc._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 2784, in _parse
return self.subcon._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 1594, in _parse
obj = self.cases.get(key, self.default)._parse(stream, context, path)
File "/Users/user/Library/Python/3.8/lib/python/site-packages/construct/core.py", line 2788, in _parse
raise e.__class__("%s\n %s" % (e, path))
construct.core.ConstError: expected b'`\n' but parsed b'\x00`'
(parsing) -> de -> de
@Namek I looked at that rec, not yet sure what the problem is. In the meantime, you can use the fast
parser, which seems to work fine on that rec.
@triplejberger can you provide your rec please?
Closing since this issue manifested on older recs. Please open a new issue if anyone has a specific usecase and needs a fix.
replay.zip