Changeset 786
- Timestamp:
- 01/03/07 19:55:23 (2 years ago)
- Files:
-
- pypdf/trunk/pyPdf/generic.py (modified) (6 diffs)
- pypdf/trunk/pyPdf/pdf.py (modified) (3 diffs)
- pypdf/trunk/pyPdf/utils.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
pypdf/trunk/pyPdf/generic.py
r779 r786 38 38 from utils import readNonWhitespace, RC4_encrypt 39 39 import filters 40 import utils 40 41 41 42 def readObject(stream, pdf): … … 95 96 96 97 def readFromStream(stream): 97 assert stream.read(4) == "null" 98 nulltxt = stream.read(4) 99 if nulltxt != "null": 100 raise utils.PdfReadError, "error reading null object" 98 101 return NullObject() 99 102 readFromStream = staticmethod(readFromStream) … … 131 134 def readFromStream(stream, pdf): 132 135 arr = ArrayObject() 133 assert stream.read(1) == "[" 136 tmp = stream.read(1) 137 if tmp != "[": 138 raise utils.PdfReadError, "error reading array" 134 139 while True: 135 140 # skip leading whitespace … … 307 312 def readFromStream(stream): 308 313 name = stream.read(1) 309 assert name == "/" 314 if name != "/": 315 raise utils.PdfReadError, "name read error" 310 316 while True: 311 317 tok = stream.read(1) … … 332 338 333 339 def readFromStream(stream, pdf): 334 assert stream.read(2) == "<<" 340 tmp = stream.read(2) 341 if tmp != "<<": 342 raise utils.PdfReadError, "dictionary read error" 335 343 data = {} 336 344 while True: … … 346 354 if data.has_key(key): 347 355 # multiple definitions of key not permitted 348 assert False356 raise utils.PdfReadError, "multiple definitions in dictionary" 349 357 data[key] = value 350 358 pos = stream.tell() pypdf/trunk/pyPdf/pdf.py
r784 r786 457 457 while not line: 458 458 line = self.readNextEndLine(stream) 459 assert line[:5] == "%%EOF" 459 if line[:5] != "%%EOF": 460 raise utils.PdfReadError, "EOF marker not found" 460 461 461 462 # find startxref entry - the location of the xref table … … 463 464 startxref = int(line) 464 465 line = self.readNextEndLine(stream) 465 assert line[:9] == "startxref" 466 if line[:9] != "startxref": 467 raise utils.PdfReadError, "startxref not found" 466 468 467 469 # read all cross reference tables and their trailers … … 476 478 # standard cross-reference table 477 479 ref = stream.read(4) 478 assert ref[:3] == "ref" 480 if ref[:3] != "ref": 481 raise utils.PdfReadError, "xref table read error" 479 482 readNonWhitespace(stream) 480 483 stream.seek(-1, 1) pypdf/trunk/pyPdf/utils.py
r766 r786 87 87 return retval 88 88 89 class PdfReadError(Exception): 90 pass 91 89 92 if __name__ == "__main__": 90 93 # test RC4
