A PDF was unable to be read due to a non-standard Xref table. Evidently, some programs will create an xref table with 21-byte entries due to the use of CR+LF endlines instead of single-character ones. As per the standard, PyPDF2 reads Xref entries in 20-byte chunks, regardless of endlines. Thus, each line (after the first) of the 21-byte Xref table contained the LF character from the end of the previous line. To remedy this, if a line starts with a CR or LF character, the 20-byte line is re-read, starting one byte further than before.