diff --git a/pypdf/pdf.py b/pypdf/pdf.py index da10e9beae..361ba3a64c 100644 --- a/pypdf/pdf.py +++ b/pypdf/pdf.py @@ -2514,6 +2514,15 @@ def usedBefore(num, generation): else: break else: + # Some PDFs have /Prev=0 in the trailer, instead of no /Prev. + if startxref == 0: + if self.strict: + raise utils.PdfReadError("/Prev=0 in the trailer (try" + " opening with strict=False)") + else: + warnings.warn("/Prev=0 in the trailer - assuming there" + " is no previous xref table") + break # Bad xref character at startxref. Let's see if we can find # the xref table nearby, as we've observed this error with an # off-by-one before.