From 2aa757978b615d99b3bdc4d4d7cfdd91a183de59 Mon Sep 17 00:00:00 2001 From: Yusuke Shinyama Date: Sat, 19 Oct 2013 08:19:40 +0900 Subject: [PATCH] Reverted to Python2.x syntax. Fixed LZW decoding. --- pdfminer/lzw.py | 9 ++++----- pdfminer/pdfinterp.py | 5 +---- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/pdfminer/lzw.py b/pdfminer/lzw.py index 6463cf1..56c86e3 100644 --- a/pdfminer/lzw.py +++ b/pdfminer/lzw.py @@ -50,12 +50,12 @@ class LZWDecoder(object): return v def feed(self, code): - x = b'' + x = '' 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) # 257 - self.prevbuf = b'' + self.prevbuf = '' self.nbits = 9 elif code == 257: pass @@ -69,7 +69,7 @@ class LZWDecoder(object): self.table.append(self.prevbuf+self.prevbuf[:1]) x = self.table[code] else: - raise CorruptDataError() + raise CorruptDataError l = len(self.table) if l == 511: self.nbits = 10 @@ -86,7 +86,6 @@ class LZWDecoder(object): code = self.readbits(self.nbits) except EOFError: break - x = self.feed(code) try: x = self.feed(code) except CorruptDataError: diff --git a/pdfminer/pdfinterp.py b/pdfminer/pdfinterp.py index 526f503..357ca16 100644 --- a/pdfminer/pdfinterp.py +++ b/pdfminer/pdfinterp.py @@ -219,10 +219,7 @@ class PDFContentParser(PSStackParser): self.istream += 1 else: raise PSEOF('Unexpected EOF, file truncated?') - data = strm.get_data() - if isinstance(data, bytes): - data = data.decode('latin-1') - self.fp = StringIO(data) + self.fp = StringIO(strm.get_data()) return def seek(self, pos):