Skip to content
Snippets Groups Projects
Commit 7cb7b659 authored by Bruce Flynn's avatar Bruce Flynn
Browse files

Remove offset from PacketTooShort to fix fobj.tell() err

parent beb8cd6c
No related branches found
No related tags found
No related merge requests found
......@@ -31,10 +31,9 @@ class PacketTooShort(Error):
After this error occurs the stream is no longer usable because data offsets
are no longer reliable.
"""
def __init__(self, header=None, offset=None):
self.offset = offset
def __init__(self, header=None):
self.primary_header = header
self.args = (self.offset, self.primary_header)
self.args = (self.primary_header,)
class NonConsecutiveSeqId(Error):
......@@ -49,7 +48,6 @@ class SimpleStream(object):
"""
def __init__(self, fobj):
self.fobj = fobj
self.offset = fobj.tell()
def __iter__(self):
return self
......@@ -63,14 +61,13 @@ class SimpleStream(object):
if not buf:
raise StopIteration()
if len(buf) < psize:
raise PacketTooShort(header=None, offset=self.offset)
raise PacketTooShort(header=None)
h1 = PrimaryHeader.from_buffer_copy(buf)
# read user data
size = h1.data_length_minus1 + 1
buf = self.fobj.read(size)
if len(buf) < size:
raise PacketTooShort(header=h1, offset=self.offset)
self.offset += (psize + size)
raise PacketTooShort(header=h1)
return h1, buf
......
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