Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-02-21 | QPDFObjectHandle::copyStream | Jay Berkenbilt | |
2021-02-21 | Refactor: separate copyStreamData from replaceForeignIndirectObjects | Jay Berkenbilt | |
2021-02-21 | addFormField: update cache rather than invalidating | Jay Berkenbilt | |
2021-02-21 | Enhance QPDFMatrix API | Jay Berkenbilt | |
2021-02-21 | Fix isPagesObject and isPageObject | Jay Berkenbilt | |
There are lots of things with /Kids that are not pages. Repair the pages tree, then do a reliable check. | |||
2021-02-20 | Allow --rotate=0 | Jay Berkenbilt | |
2021-02-20 | Add const versions of QPDFMatrix::transform* | Jay Berkenbilt | |
2021-02-18 | Add QPDFAcroFormDocumentHelper::addFormField | Jay Berkenbilt | |
2021-02-18 | Add QPDFPageObjectHelper::getMatrixForFormXObjectPlacement | Jay Berkenbilt | |
2021-02-18 | Form field for non-widget just returns null | Jay Berkenbilt | |
2021-02-18 | Add QUtil::path_basename | Jay Berkenbilt | |
2021-02-15 | Add QPDFObjectHandle::parse for strings with context | Jay Berkenbilt | |
2021-02-14 | Use functional replaceStreamData | Jay Berkenbilt | |
2021-02-14 | Add functional versions of QPDFObjectHandle::replaceStreamData | Jay Berkenbilt | |
Also fix a bug in checking consistency of length for stream data providers. Length should not be checked or recorded if the provider says it failed to generate the data. | |||
2021-02-13 | Move QPDFMatrix into the public API | Jay Berkenbilt | |
2021-02-13 | QUtil::double_to_string: trim trailing zeroes with option to disable | Jay Berkenbilt | |
2021-02-11 | Allow zone information to be omitted from timestamp strings | Jay Berkenbilt | |
2021-02-11 | Add autoconf test for localtime_r | Jay Berkenbilt | |
2021-02-10 | Require C++14 instead of C++11 | Jay Berkenbilt | |
2021-02-10 | Fix loop in QPDFOutlineDocumentHelper (fuzz issue 30507) | Jay Berkenbilt | |
2021-02-10 | Update to new name/number tree API | Jay Berkenbilt | |
2021-02-10 | Minor clean up of Windows headers | Jay Berkenbilt | |
2021-02-10 | Implement helpers for file attachments | Jay Berkenbilt | |
2021-02-09 | Add QUtil methods for dealing with PDF timestamp strings | Jay Berkenbilt | |
2021-02-08 | Make newly created name/number trees indirect objects | Jay Berkenbilt | |
2021-02-08 | Add QUtil::pipe_file and QUtil::file_provider | Jay Berkenbilt | |
2021-02-06 | Remove erroneous handling of /EFF for stream decryption | Jay Berkenbilt | |
I thought /EFF was supposed to be used as a default for decrypting embedded file streams, but actually it's supposed to be advice to a conforming writer about handling new ones. This makes sense since the findAttachmentStreams code, which is not actually needed, was never right. | |||
2021-02-06 | Make wrong object stream type a warning | Jay Berkenbilt | |
2021-02-03 | Handle older PDFs whose form XObjects inherit resources (fixes #494) | Jay Berkenbilt | |
When removing unreferenced resources, notice if a page (recursively) contains a form XObject with unreferenced resources, and count any such resources as referenced by the page. | |||
2021-02-03 | Refactor removal of unreferenced resources | Jay Berkenbilt | |
Refactor in preparation for resolving unresolved resources in form xobjects from page. | |||
2021-01-31 | Handle strings in inline image dictionaries | Jay Berkenbilt | |
We need to use token.getRawValue, not token.getValue | |||
2021-01-31 | Recover from exceptions during filtering for inline images | Jay Berkenbilt | |
2021-01-31 | Improve memory safety of dict/array iterators | Jay Berkenbilt | |
2021-01-30 | Add C++ iterator API around array and dictionary objects | Jay Berkenbilt | |
2021-01-29 | Make QPDFObjectHandle::is* return false for uninitialized objects | Jay Berkenbilt | |
2021-01-29 | name/number tree: explicitly declare default destructors | Jay Berkenbilt | |
2021-01-26 | NNTree: rework iterators to be more memory efficient | Jay Berkenbilt | |
Keep a std::pair internal to the iterators so that operator* can return a reference and operator-> can work, and each can work without copying pairs of objects around. | |||
2021-01-26 | name/number trees: remove | Jay Berkenbilt | |
2021-01-25 | name/number trees: insertAfter | Jay Berkenbilt | |
2021-01-25 | name/number trees: newEmpty, increment/decrement end() | Jay Berkenbilt | |
2021-01-25 | Implement repair and insert for name/number trees | Jay Berkenbilt | |
2021-01-24 | QPDFObjectHandle::newUnicodeString to uses UTF-16 only when needed | Jay Berkenbilt | |
Use the first of ASCII, PDFDocEncoding, or UTF-16 that is capable of encoding the string. | |||
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 | |