Age | Commit message (Collapse) | Author |
|
* Don't "shift" when $ARGV0 is a qpdf executable
* Base -- to basename to avoid stuff like `qpdf --version` calling
`basename --version`
|
|
Avoid representing as PDF Doc encoding any string whose PDF Doc
encoding representation starts with a UTF-16 or UTF-8 marker.
|
|
|
|
Make sure that our attempt to test both signed and unsigned char is
actually right.
|
|
|
|
|
|
Base implementation of the buffer on std::basic_string<unsigned char>.
|
|
|
|
|
|
For greater visibility and community participation, track ABI change
ideas that aren't in the source in a github discussion item rather
than in TODO.
|
|
|
|
|
|
|
|
|
|
This reverts commit 416d9668ee97c54a692d9280364746ce8aeeed43.
This commit causes numerous failures in the pikepdf test suite and
also causes a symbol to disappear from the public API. More
investigation will be required.
|
|
|
|
|
|
From time to time, someone has a problem because their build is
grabbing an old version of qpdf header files that are installed
somewhere on their system. I am hoping this will put an end to that.
|
|
|
|
|
|
An indirect object reference to 0, 0 is invalid. If it appears in the
file or is parsed from a string, the parser catches it. This check
would only be useful for someone explicitly calling getObject with 0,
0, and that would trigger an error during resolve().
|
|
|
|
Removing an element from a set with iterator is constant time, and
std::set specifies that other operations on the set do not invalidate
existing iterators.
|
|
|
|
Some new symbols were exported.
|
|
These markers are being added for nested classes that are already
marked with QPDF_DLL_CLASS. They don't make any different on Linux,
but they matter on Windows.
|
|
|
|
|
|
This was broken for cross-compilation and has probably been
unnecessary for several years now.
Also fix extraneous whitespace in related some tests.
|
|
|
|
|
|
|
|
* Define POINTERHOLDER_TRANSITION
* Make sure we are getting the intended version of qpdf
|
|
Remove paragraph about traversal during destruction since this is still necessary with the
new implementation.
|
|
Replace operator== and operator!=, which were testing for the same
underlying object, with isSameObjectAs. This change was motivated by
the fact that pikepdf internally had its own operator== method for
QPDFObjectHandle that did structural comparison. I backed out qpdf's
operator== as a courtesy to pikepdf (in my own testing) but also
because I think people might naturally assume that operator== does a
structural comparison, and isSameObjectAs is clearer in its intent.
|
|
|
|
|
|
Expose functions to the C API to create new loggers and to setLogger
and getLogger for QPDF and QPDFJob.
|
|
|
|
GNU grep 3.8 started to emit warnings when invoking egrep.
Convert all calls to grep -E.
|
|
|
|
|
|
|
|
|
|
|
|
QPDFValueProxy wasn't a good name for it. We decided the evil of
having the header file be named QPDFObject_private.hh was less than
the evil of having the class be named something other than what it
should have been named.
|
|
Preparing to change the class name back to QPDFObject
|
|
I decided that it's actually fine to copy a direct object to another
QPDF. Even if we eventually prevent a QPDFObject from having multiple
parents, this could happen if an object is moved.
|
|
When a QPDF is destroyed, changing indirect objects to direct nulls
makes them effectively disappear silently when they sneak into other
places. Instead, we should treat this as an error. Adding a destroyed
object type makes this possible.
|
|
|