-
Modernise constructors, make classes final, etc.
-
Add new private Util.hh header to define inline functions and expose as ordinary functions in QUtil.
-
- Remove unnecessary QPDF_DLLs - make deleted constructors public - move some comments to support tooltips - modernise some constructors and destructors - change some member shared pointers to unique pointers
-
Move all stream-specific methods to new class qpdf::Stream
-
Except for virtual functions to avoid the need for users to update code.
-
This improves indentation of long strings. This commit also fixes some trailing whitespace in ChangeLog.
-
When recovering XRef streams, start with the stream with the largest /Size rather than the largest offset. Also, if reconstruction fails to find a trailer with a valid /Root entry search for a root object.
-
Provide correct obj_gen and offset.
-
This reverts commit ff2a78f579ebdd06b417e34260a17dba06e71137, reversing changes made to 8f54319f7a6514110f4b05cbbf1cb1c9fc8cb6a0.
-
This reverts commit 0e92cf6bf399249c603c3d0212e898fd29e71fcd, reversing changes made to 7d34b89a69e8e89c098dd373442f7df809c28eff.
-
This reverts commit c648b9a018105a3c30b3e7f3c5f8a058d3ddd92c, reversing changes made to 12b67a3227df6b6df3a4f5f098e11cce173ff7d5.
-
Also, make obj_cache private and rename to table.
-
Move methods responsible for loading or keeping track of objects to QPDF_objects.cc.
-
Return results rather than using reference parameters. Fixes bug in #1272 where parameters were not reinitialized when calling read_bad_entry from read_entry.
-
Also, delay adjustments for compressed objects until needed by linearization checks.
-
Optimistically read subsection headers without reading individual object entries, assuming that they are 20 bytes long as per the PDF spec. If problems are encountered, fall back to calling bad_subsections.
-
Replace QPDFXRefEntry with a std::variant of structs.
-
Temporarily disable 3 specific-bugs tests. Remove 'xref size mismatch' test.