Commit Graph

3461 Commits

Author SHA1 Message Date
Jay Berkenbilt 7315aa8c9b Prioritize fuzz for JSON and code coverage 2024-01-12 09:03:15 -05:00
Jay Berkenbilt 25e87a9d03 Update TODO-pages from issues #1116 2024-01-12 08:05:22 -05:00
Jay Berkenbilt ebb10f3256 Fix null pointer issue on array copy 2024-01-12 08:05:22 -05:00
Jay Berkenbilt 2c97aaddd5 Update TODO-pages 2024-01-11 06:13:57 -05:00
Jay Berkenbilt d339f8ad1a Add non-trivial multiple overlay/underlay tests 2024-01-11 06:13:57 -05:00
Jay Berkenbilt 90a97bf4ef Include filename in verbose output for overlay/underlay 2024-01-11 06:13:57 -05:00
Jay Berkenbilt 5b2e543089 Honor repeated overlay/underlay 2024-01-11 06:13:57 -05:00
Jay Berkenbilt 6cf04b0a88 Allow repetition of overlay/underlay
This is just QPDFJob wiring.
2024-01-11 06:13:57 -05:00
Jay Berkenbilt 0161f62e38 QPDFJob JSON: allow single item in place of array 2024-01-11 06:13:57 -05:00
Jay Berkenbilt 7de0b3f3c0 JSONHandler: add fallback handler support 2024-01-11 06:13:57 -05:00
Jay Berkenbilt 12f7a4461b Handle pages/under/overlay JSON file in begin
...since they have to be handled before other options. It was working
because, in both cases, `file` was alphabetically before the other
keys, but this implementation gives a stronger guarantee.
2024-01-10 16:45:14 -05:00
Jay Berkenbilt 6488b156f7 Fix deleted copy constructors for Config classes 2024-01-10 16:45:14 -05:00
Jay Berkenbilt 0df672049b Remove completed work from TODO-pages 2024-01-10 16:45:14 -05:00
Jay Berkenbilt 1ecdbc1e55 Bump version to 11.9.0 2024-01-10 16:45:13 -05:00
Jay Berkenbilt 9c723aeb56 Allow --file with --overlay and --underlay 2024-01-10 16:44:46 -05:00
Jay Berkenbilt 34f013c1be Allow --file and --range with --pages
Accept --file and --range as named parameters in additional to
allowing positional arguments. This is in preparation for adding
additional flags.
2024-01-10 16:44:17 -05:00
Jay Berkenbilt 20a134826c Fix arg parsing check with --collate
The check for the number of items was in the wrong place.
2024-01-10 06:49:31 -05:00
Jay Berkenbilt 8b0ae8bb99
Merge pull request #1117 from m-holger/sparse
Tune handling of sparse arrays in QPDF_Array
2024-01-10 06:49:10 -05:00
m-holger 5e9de5cd50 Tune handling of sparse arrays in QPDF_Array
Sparse arrays are rare. Dynamically create the variables needed to manage
them only when needed.
2024-01-10 09:36:18 +00:00
Jay Berkenbilt 452e1f5c20 Prepare 11.8.0 release 2024-01-08 10:56:41 -05:00
m-holger e28625144d Tweak QPDF::getCompressibleObjGens 2024-01-08 10:55:51 -05:00
Jay Berkenbilt adb866efd3 Fix error from older gcc versions 2024-01-08 10:55:51 -05:00
Jay Berkenbilt 8ba968bd86
Merge pull request #1112 from m-holger/gcog
Tweaks to QPDF::read_xref, removeObject and getCompressibleObjGens
2024-01-08 08:35:18 -05:00
m-holger 8715d6a693 Tweak QPDF::replaceObject 2024-01-08 11:54:33 +00:00
m-holger 5641832e54 Tweak QPDF::read_xref 2024-01-08 11:43:57 +00:00
Jay Berkenbilt 07f6c635a9 Bug fix: treat old generations of reused objects as null 2024-01-07 17:16:14 -05:00
Jay Berkenbilt 1d96af8b9f Revert "Prepare 11.8.0 release"
Holding release to think about recently discovered incorrect handling
of deleted generations.

This reverts commit 162716807c.
2024-01-07 16:13:04 -05:00
Jay Berkenbilt 94b4e900b2 Add better tests for generation > 0 with object streams
This includes an expected failure for a file with a dangling
reference to an old generation.
2024-01-07 16:06:19 -05:00
Jay Berkenbilt d54bd7b265 Add failing tests to illustrate qpdf's generation bug 2024-01-07 15:22:22 -05:00
Jay Berkenbilt df61f3a6c6 Improve getCompressibleObjGens fix to handle gen > 0 2024-01-07 15:22:04 -05:00
m-holger ba477e0b33 Tune QPDF::getCompressibleObjGens
Change set visited to std::vector<bool>
2024-01-07 17:39:40 +00:00
m-holger 6195499598 Tune QPDF::getCompressibleObjGens
Swap front and back, and change queue from list to vector
2024-01-07 16:39:03 +00:00
Jay Berkenbilt 162716807c Prepare 11.8.0 release 2024-01-07 08:55:46 -05:00
Jay Berkenbilt 5c7c58dd8f Minor fixes to release process 2024-01-07 08:54:36 -05:00
Jay Berkenbilt ebdd41e692 Spell check 2024-01-07 08:54:36 -05:00
Jay Berkenbilt 36dcf10858 Minor clarifications/fixes in TODO-pages 2024-01-07 08:46:25 -05:00
Jay Berkenbilt 77e21f2a7a Fix TODO exclusion in main.yml 2024-01-07 08:42:24 -05:00
Jay Berkenbilt 37bface8a2 Brush up roadmap in TODO.md 2024-01-06 18:45:10 -05:00
Jay Berkenbilt 55b0024899 Format code 2024-01-06 17:23:45 -05:00
Jay Berkenbilt e50ff67d00 Remove explicit type from PageLabel dictionary
The old code didn't put one there, and it's not really useful. It just
makes the file (trivially) larger.
2024-01-06 17:20:55 -05:00
Jay Berkenbilt 7b3fff15a9 QPDF.cc: remove unused includes 2024-01-06 17:19:16 -05:00
Jay Berkenbilt 2994f9cf4c Attempt to find xref streams during recovery (fixes #1103) 2024-01-06 16:51:03 -05:00
Jay Berkenbilt 8a24287c39 Remove --set-page-labels since it's now done 2024-01-05 17:12:17 -05:00
Jay Berkenbilt 7cac433e2d Implement --set-page-labels and supporting API (fixes #939) 2024-01-05 17:12:12 -05:00
Jay Berkenbilt 543038c52a Bump version to 11.8.0 2024-01-05 17:11:21 -05:00
Jay Berkenbilt e6b6ca466a Update docs on adding a command-line argument 2024-01-05 17:10:47 -05:00
Jay Berkenbilt 08e3050d5f Automated changes for --set-page-labels
This commit contains the changes from generate_auto_job based on
manual changes from the previous commit.
2024-01-05 17:10:45 -05:00
Jay Berkenbilt a0e70b370a Wiring for --set-page-labels: manual (non-bisectable commit)
This commit contains only the manual changes. It is separated for
clarity. This commit would not pass CI because it lacks the automated
changes, which appear in the next commit.
2024-01-05 17:10:32 -05:00
Jay Berkenbilt 1921e44ca7 Update TODO-pages with comments from #1104 2024-01-05 08:49:18 -05:00
Jay Berkenbilt 395bc7f825 Prepare for the discussion ticket on GitHub 2024-01-04 13:06:37 -05:00