diff --git a/edosl0util/stream.py b/edosl0util/stream.py index f06ac8491dfa52e0b46581bdda164922c61d2f07..2c7c075ed6b6ea949e0ff0b9223a08991fc54312 100644 --- a/edosl0util/stream.py +++ b/edosl0util/stream.py @@ -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 diff --git a/edosl0util/trunc.py b/edosl0util/trunc.py index a68402b872cbf2af4d7484d54fd26e7f78d82d61..7d944b2e8e143b9463a89f8305a96de2e069a543 100644 --- a/edosl0util/trunc.py +++ b/edosl0util/trunc.py @@ -6,7 +6,8 @@ from edosl0util.stream import PacketStream def trunc_stream(stream, start, end): - stream.seek(start) + stream.seek_to(start) + stream.seek_to_next_stamp() pkt = stream.next() while pkt.stamp <= end: diff --git a/setup.py b/setup.py index d12c555d9562a00d74f5d1b36b513dcd24281e0a..acc5f6ddc460bee355c26c65dd68b0e8350cb04e 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ setup( author='Bruce Flynn', author_email='brucef@ssec.wisc.edu', description='Utilities for working with EDOS L0 PDS files', - version='0.4', + version='0.4.1', zip_safe=False, packages=find_packages(), install_requires=[