Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-01-06 | Move encryption parameters into a class | Jay Berkenbilt | |
2019-01-04 | Don't call assert while checking linearization data (fixes #209, #231) | Jay Berkenbilt | |
Instead of calling assert for problems found during checking linearization data, throw an exception which is later caught and issued as an error. Ideally we would handle errors more robustly, but this is still a significant improvement. | |||
2019-01-04 | Fix dangling references (fixes #240) | Jay Berkenbilt | |
On certain operations, such as iterating through all objects and adding new indirect objects, walk through the entire object structure and explicitly resolve any indirect references to non-existent objects. That prevents new objects from springing into existence and causing the previously dangling references to point to them. | |||
2019-01-03 | Fix seg fault on empty xref stream (fixes #263) | Jay Berkenbilt | |
Thanks to @p-cher for supplying a patch. | |||
2018-08-18 | Prepare 8.2.1 releaserelease-qpdf-8.2.1 | Jay Berkenbilt | |
2018-08-16 | Prepare 8.2.0 releaserelease-qpdf-8.2.0 | Jay Berkenbilt | |
2018-06-23 | Prepare 8.1.0 releaserelease-qpdf-8.1.0 | Jay Berkenbilt | |
2018-06-22 | Add method to get count of objects in QPDF | Jay Berkenbilt | |
2018-03-06 | Prepare 8.0.2 releaserelease-qpdf-8.0.2 | Jay Berkenbilt | |
2018-03-05 | Treat loop in xref tables as damage (fixes #192) | Jay Berkenbilt | |
Prior to this fix, if there was a loop detected in following /Prev pointers in xref streams/tables, it would cause qpdf to lose data. Note that this condition causes many PDF readers to hang or fail. | |||
2018-03-04 | Prepare 8.0.1 releaserelease-qpdf-8.0.1 | Jay Berkenbilt | |
2018-02-25 | Release 8.0.0release-qpdf-8.0.0 | Jay Berkenbilt | |
2018-02-25 | 8.0.rc3release-qpdf-8.0.rc3 | Jay Berkenbilt | |
2018-02-25 | 8.0.rc2release-qpdf-8.0.rc2 | Jay Berkenbilt | |
2018-02-25 | Update version to 8.0.rc1release-qpdf-8.0.rc1 | Jay Berkenbilt | |
This is for testing the release process, particularly as it pertains to AppImage creation. | |||
2018-02-21 | Bump version number and soname | Jay Berkenbilt | |
Bump to an alpha release. This version is not being widely released but is being used to push the new shared library version through the debian packaging system and to test out github releases. | |||
2018-02-19 | More robust handling of type errors | Jay Berkenbilt | |
Give objects descriptions and context so it is possible to issue warnings instead of fatal errors for attempts to access objects of the wrong type. | |||
2018-02-19 | Include omitted object description in error message | Jay Berkenbilt | |
2018-02-19 | Include filename in object stream parse error | Jay Berkenbilt | |
2018-02-05 | Prepare 7.1.1 releaserelease-qpdf-7.1.1 | Jay Berkenbilt | |
2018-02-04 | Fix offset in error message | Jay Berkenbilt | |
2018-01-15 | Update version numbers for 7.1.0release-qpdf-7.1.0 | Jay Berkenbilt | |
2018-01-14 | Allow raw encryption key to be specified | Jay Berkenbilt | |
Add options to enable the raw encryption key to be directly shown or specified. Thanks to Didier Stevens <didier.stevens@gmail.com> for the idea and contribution of one implementation of this idea. | |||
2017-12-25 | Correct errors in PNG filters and make use from library | Jay Berkenbilt | |
2017-09-16 | Prepare 7.0.0 releaserelease-qpdf-7.0.0 | Jay Berkenbilt | |
2017-09-12 | Improve message for stream decoding error | Jay Berkenbilt | |
Tweak the message so that we inform the user that we are mitigating data loss. | |||
2017-08-29 | Replace all atoi calls with QUtil::string_to_int | Jay Berkenbilt | |
The latter catches underflow/overflow. | |||
2017-08-26 | Detect xref pointer infinite loop (fixes #149) | Jay Berkenbilt | |
2017-08-22 | Bump soname to 18 and version to 7.0.b1release-qpdf-7.0.b1 | Jay Berkenbilt | |
2017-08-22 | Limit token length during xref recovery | Jay Berkenbilt | |
While scanning the file looking for objects, limit the length of tokens we allow. This prevents us from getting caught up in reading a file character by character while digging through large streams. | |||
2017-08-22 | Fix logic error in recovery | Jay Berkenbilt | |
A stray semicolon caused a condition to be incorrectly applied during stream length recovery. | |||
2017-08-22 | Push QPDF member variables into a nested class | Jay Berkenbilt | |
Pushing member variables into a nested class enables addition of new member variables without breaking binary compatibility. | |||
2017-08-21 | Enable finer grained control of stream decoding | Jay Berkenbilt | |
This commit adds several API methods that enable control over which types of filters QPDF will attempt to decode. It also adds support for /RunLengthDecode and /DCTDecode filters for both encoding and decoding. | |||
2017-08-12 | Prevent a division by zero error (fixes #141) | Jay Berkenbilt | |
Bad /W in an xref stream could cause a division by zero error. Now this is handled as a special case. | |||
2017-08-11 | Read xref table without PCRE | Jay Berkenbilt | |
Also accept more errors than before. | |||
2017-08-11 | Reconstruct xref without PCRE | Jay Berkenbilt | |
2017-08-11 | Improve stream length recovery | Jay Berkenbilt | |
Eliminate PCRE and find endobj not preceded by endstream. Be more lax about placement of endstream and endobj. | |||
2017-08-11 | Find xref without PCRE | Jay Berkenbilt | |
2017-08-11 | Find starxref without PCRE | Jay Berkenbilt | |
2017-08-11 | Find header without PCRE | Jay Berkenbilt | |
2017-08-11 | Allow QPDFTokenizer::readToken to return bad tokens | Jay Berkenbilt | |
Sometimes we want to ignore bad tokens rather than having them throw an exception. A coverage case is commented out here and added in a later commit. | |||
2017-07-30 | Catch more exceptions while resolving objects | Jay Berkenbilt | |
2017-07-30 | When recover stream length, indicate the length (fixes #44) | Jay Berkenbilt | |
2017-07-29 | Handle zlib data errors better (fixes #106) | Jay Berkenbilt | |
2017-07-29 | Better recovery of bad stream start (fixes #104) | Jay Berkenbilt | |
2017-07-29 | Use 1.2 as the version if we can't read it from the header | Jay Berkenbilt | |
The code was using 1.0, but we use /FlateDecode, which didn't appear until 1.2. | |||
2017-07-29 | Add option to preserve unreferenced objects | Jay Berkenbilt | |
2017-07-29 | Explicitly check root dictionary type | Jay Berkenbilt | |
Very badly corrupted files may not have a retrievable root dictionary. Handle that as a special case so that a more helpful error message can be provided. | |||
2017-07-28 | Add precheck streams capability | Jay Berkenbilt | |
When requested, QPDFWriter will do more aggress prechecking of streams to make sure it can actually succeed in decoding them before attempting to do so. This will allow preservation of raw data even when the raw data is corrupted relative to the specified filters. | |||
2017-07-28 | Convert many more errors to warnings | Jay Berkenbilt | |