Hey again, patch is updated.
Of course i need to resize the buffer that the pdf is read into, not just make the part bigger that is read from the file. That was pure oversight on my part, sorry about that.
Greetings, Dennis
Index: src/podofo/base/PdfParser.cpp =================================================================== --- src/podofo/base/PdfParser.cpp (revision 1998) +++ src/podofo/base/PdfParser.cpp (working copy) @@ -1340,7 +1340,14 @@ "Failed to seek to EOF when looking for xref"); } - pdf_long lXRefBuf = PDF_MIN( static_cast<pdf_long>(nFileSize), static_cast<pdf_long>(lRange) ); + pdf_long lXRefBuf; + if (strncmp(pszToken, "trailer", 6) == 0) { + lXRefBuf = PDF_MIN(static_cast<pdf_long>(nFileSize), static_cast<pdf_long>(nFileSize - m_nXRefOffset)); + m_buffer.Resize(lXRefBuf); + } + else { + lXRefBuf = PDF_MIN(static_cast<pdf_long>(nFileSize), static_cast<pdf_long>(lRange)); + } size_t nTokenLen = strlen( pszToken ); m_device.Device()->Seek( -lXRefBuf, std::ios_base::cur );
_______________________________________________ Podofo-users mailing list Podofo-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/podofo-users