Reverted to Python2.x syntax. Fixed LZW decoding.
parent
bfd9e93c12
commit
2aa757978b
|
@ -50,12 +50,12 @@ class LZWDecoder(object):
|
||||||
return v
|
return v
|
||||||
|
|
||||||
def feed(self, code):
|
def feed(self, code):
|
||||||
x = b''
|
x = ''
|
||||||
if code == 256:
|
if code == 256:
|
||||||
self.table = [bytes([i]) for i in range(256)] # 0-255
|
self.table = [ chr(c) for c in xrange(256) ] # 0-255
|
||||||
self.table.append(None) # 256
|
self.table.append(None) # 256
|
||||||
self.table.append(None) # 257
|
self.table.append(None) # 257
|
||||||
self.prevbuf = b''
|
self.prevbuf = ''
|
||||||
self.nbits = 9
|
self.nbits = 9
|
||||||
elif code == 257:
|
elif code == 257:
|
||||||
pass
|
pass
|
||||||
|
@ -69,7 +69,7 @@ class LZWDecoder(object):
|
||||||
self.table.append(self.prevbuf+self.prevbuf[:1])
|
self.table.append(self.prevbuf+self.prevbuf[:1])
|
||||||
x = self.table[code]
|
x = self.table[code]
|
||||||
else:
|
else:
|
||||||
raise CorruptDataError()
|
raise CorruptDataError
|
||||||
l = len(self.table)
|
l = len(self.table)
|
||||||
if l == 511:
|
if l == 511:
|
||||||
self.nbits = 10
|
self.nbits = 10
|
||||||
|
@ -86,7 +86,6 @@ class LZWDecoder(object):
|
||||||
code = self.readbits(self.nbits)
|
code = self.readbits(self.nbits)
|
||||||
except EOFError:
|
except EOFError:
|
||||||
break
|
break
|
||||||
x = self.feed(code)
|
|
||||||
try:
|
try:
|
||||||
x = self.feed(code)
|
x = self.feed(code)
|
||||||
except CorruptDataError:
|
except CorruptDataError:
|
||||||
|
|
|
@ -219,10 +219,7 @@ class PDFContentParser(PSStackParser):
|
||||||
self.istream += 1
|
self.istream += 1
|
||||||
else:
|
else:
|
||||||
raise PSEOF('Unexpected EOF, file truncated?')
|
raise PSEOF('Unexpected EOF, file truncated?')
|
||||||
data = strm.get_data()
|
self.fp = StringIO(strm.get_data())
|
||||||
if isinstance(data, bytes):
|
|
||||||
data = data.decode('latin-1')
|
|
||||||
self.fp = StringIO(data)
|
|
||||||
return
|
return
|
||||||
|
|
||||||
def seek(self, pos):
|
def seek(self, pos):
|
||||||
|
|
Loading…
Reference in New Issue