Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-01-24 | Use new QPDF{Name,Number}TreeObjectHelper API | Jay Berkenbilt | |
2021-01-24 | Add new constructors for name/number tree helpers | Jay Berkenbilt | |
Add constructors that take a QPDF object so we can issue warnings and create new indirect objects. | |||
2021-01-24 | Use QPDFNameTreeObjectHelper's iterator directly | Jay Berkenbilt | |
2021-01-24 | Add iterators to name/number tree helpers | Jay Berkenbilt | |
2021-01-24 | Reimplement name and number tree object helpers | Jay Berkenbilt | |
Create a computationally and memory efficient implementation of name and number trees that does binary searches as intended by the data structure rather than loading into a map, which can use a great deal of memory and can be very slow. | |||
2021-01-17 | Add warn() to QPDF's public API | Jay Berkenbilt | |
2021-01-11 | Treat /EmbeddedFiles as a proper name tree | Jay Berkenbilt | |
If we ever had an encrypted file with different filters for attachments and either the /EmbeddedFiles name tree was deep or some of the file specs didn't have /Type, we would have overlooked those as attachment streams. The code now properly handles /EmbeddedFiles as a name tree. | |||
2021-01-06 | Warn rather than segv on access after closing input source (fixes #495) | Jay Berkenbilt | |
2021-01-04 | Prepare version 10.1.0release-qpdf-10.1.0 | Jay Berkenbilt | |
2021-01-04 | Spell check | Jay Berkenbilt | |
2021-01-04 | Fix some pipelines to be safe if downstream write fails (fuzz issue 28262) | Jay Berkenbilt | |
2021-01-03 | Fix outdated comment | Jay Berkenbilt | |
2021-01-02 | Make more QPDFPageObjectHelper methods work with form XObject | Jay Berkenbilt | |
2021-01-02 | Externalize inline images now includes form XObjects | Jay Berkenbilt | |
2021-01-02 | Bug fix: avoid extraneous pipeline finish calls with multiple contents | Jay Berkenbilt | |
Avoid calling finish() multiple times on the pipeline passed to pipeContentStreams. This commit also fixes a bug in which qpdf was not exiting with the proper exit status if warnings found while splitting pages; this was exposed by a test case that changed. | |||
2021-01-02 | Add several methods for working with form XObjects (fixes #436) | Jay Berkenbilt | |
Make some more methods in QPDFPageObjectHelper work with form XObjects, provide forEach methods to walk through nested form XObjects, possibly recursively. This should make it easier to work with form XObjects from user code. | |||
2021-01-02 | QPDFPageObjectHelper: filterPageContents -> filterContents + form XObject | Jay Berkenbilt | |
2021-01-02 | QPDFPageObjectHelper: getPageImages -> getImages | Jay Berkenbilt | |
2021-01-02 | QPDFPageObjectHelper::getPageImages: support form XObjects | Jay Berkenbilt | |
2021-01-01 | Add QPDFObjectHandle::isFormXObject | Jay Berkenbilt | |
2020-12-30 | Add QPDFPageObjectHelper::flattenRotation and --flatten-rotation | Jay Berkenbilt | |
2020-12-28 | Add QPDFObjectHandle::setFilterOnWrite | Jay Berkenbilt | |
2020-12-28 | Add ostream << for QPDFObjGen | Jay Berkenbilt | |
2020-12-28 | Let optimize filter stream parameters instead of making them direct | Jay Berkenbilt | |
Also removes preclusion of stream references in stream parameters of filterable streams and reduces write times by about 8% by eliminating an extra traversal of the objects. | |||
2020-12-28 | Restructure optimize to allow skipping parameters of filtered streams | Jay Berkenbilt | |
2020-12-28 | Refactor: separate code that determines whether to filter a stream | Jay Berkenbilt | |
2020-12-28 | Implement user-provided stream filters | Jay Berkenbilt | |
Refactor QPDF_Stream to use stream filter classes to handle supported stream filters as well. | |||
2020-12-26 | Add QPDFObjectHandle::makeDirect(bool allow_streams) | Jay Berkenbilt | |
2020-12-20 | Provide qpdf write progress reporting from C API (fixes #487) | Jay Berkenbilt | |
2020-11-29 | Add QPDFObjectHandle manipulation to C API | Jay Berkenbilt | |
2020-11-21 | Prepare 10.0.4 releaserelease-qpdf-10.0.4 | Jay Berkenbilt | |
2020-11-11 | Treat direct page as runtime rather than logic error (fuzz issue 27393) | Jay Berkenbilt | |
2020-11-04 | Ignore unused field in xref entry, avoiding range error (fixes #482) | Jay Berkenbilt | |
2020-10-31 | Prepare 10.0.3 releaserelease-qpdf-10.0.3 | Jay Berkenbilt | |
2020-10-31 | Fix stack overflow on direct root (fuzz issue 26761) | Jay Berkenbilt | |
2020-10-31 | Add comments explaining the foreign object copying code | Jay Berkenbilt | |
These are the comments I would have liked to have been able to read while fixing #449 and #478. | |||
2020-10-31 | Fix foreign stream copying bug (fixes #478) | Jay Berkenbilt | |
This reverts an incorrect fix to #449 and codes it properly. The real problem was that we were looking at the local dictionaries rather than the foreign dictionaries when saving the foreign stream data. In the case of direct objects, these happened to be the same, but in the case of indirect objects, the object references could be pointing anywhere since object numbers don't match up between the old and new files. | |||
2020-10-27 | Prepare 10.0.2 releaserelease-qpdf-10.0.2 | Jay Berkenbilt | |
2020-10-27 | Improve efficiency of number to string conversion | Jay Berkenbilt | |
2020-10-27 | Revert removal of unreadCh change for performance | Jay Berkenbilt | |
Turns out unreadCh is much more efficient than seek(-1, SEEK_CUR). Update comments and code to reflect this. | |||
2020-10-23 | Avoid merging adjacent tokens when concatenating contents (fixes #444) | Jay Berkenbilt | |
2020-10-22 | Avoid leak by resolving object streams more than once (fuzz issue 23642) | Jay Berkenbilt | |
2020-10-22 | Minor code cleanup | Jay Berkenbilt | |
* Return rather than exiting from realmain in qpdf.cc * Remove extraneous blank line * Don't assign temporary to const reference | |||
2020-10-22 | Handle jpeg library fuzz false positives | Jay Berkenbilt | |
The jpeg library has some assembly code that is missed by the compiler instrumentation used by memory sanitization. There is a runtime environment variable that is used to work around this issue. | |||
2020-10-22 | Check for overflow in page labels (fuzz issue 23599) | Jay Berkenbilt | |
2020-10-22 | Add range_check method to QIntC | Jay Berkenbilt | |
2020-10-22 | Fix loop detection error (fuzz issue 23172) | Jay Berkenbilt | |
2020-10-22 | Obscure bug fix copying foreign streams in special cases (fixes #449) | Jay Berkenbilt | |
Specifically, if a stream had its stream data replaced and had indirect /Filter or /DecodeParms, it would result in non-silent loss of data and/or internal error. | |||
2020-10-21 | Protect numeric conversion against user's locale (fixes #459) | Jay Berkenbilt | |
2020-10-18 | Stop using InputSource::unreadCh | Jay Berkenbilt | |