-
The code accepted values other than /Yes but still used /Yes as the checked value instead of obeying the normal appearance dictionary.
-
A parse error in stream data in which stream data contained a nested object would cause a crash because qpdf was not correctly updating its internal state. Rework the QPDF json reactor to not be sensitive to parse errors in this way.
-
Allow "n:/pdf-syntax" JSON syntax for dictionary keys
-
Also, modernize for loop.
-
Instead of overwriting cur_row.data() use clear and insert.
-
Tighten checks for invalid indirect references during xref reconstru…
-
Fix two errors introduced in #1110 and #1112. Since #1110, encountering the invalid indirect reference #1110 -2147483648 n R produces an integer underflow which, if undetected, immediately trigger a logic error. Since #1112, object -1 0 R may be incorrectly identified as an earlier generation of itself and deleted, invalidating a live iterator.
-
Use std::vector instead of list and move shared pointers
-
This is just QPDFJob wiring.
-
...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.
-
Accept --file and --range as named parameters in additional to allowing positional arguments. This is in preparation for adding additional flags.
-
The check for the number of items was in the wrong place.
-
Sparse arrays are rare. Dynamically create the variables needed to manage them only when needed.