From e783d8e3247ee673ef0974d602a9de4a34e7a29a Mon Sep 17 00:00:00 2001 From: Adam Shapiro Date: Wed, 4 Nov 2026 16:41:51 -0500 Subject: [PATCH] Fixed MessageBatch.get_bytes() computing every message's size on each call. --- python/fusion_engine_client/parsers/message_batch.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/python/fusion_engine_client/parsers/message_batch.py b/python/fusion_engine_client/parsers/message_batch.py index 76e756d5..dbd08910 100644 --- a/python/fusion_engine_client/parsers/message_batch.py +++ b/python/fusion_engine_client/parsers/message_batch.py @@ -84,8 +84,10 @@ def get_bytes(self, i: int) -> memoryview: @return A `memoryview` of the message. """ + # Compute this message's size. Using self.size_bytes would compute the size of every message in the batch. start = int(self.offset[i]) - return memoryview(self._buffer[start:start + int(self.size_bytes[i])]) + size_bytes = MessageHeader.calcsize() + int(self.payload_size_bytes[i]) + return memoryview(self._buffer[start:start + size_bytes]) def get_payload(self, i: int) -> memoryview: """!