Commit Graph

2870 Commits

Author SHA1 Message Date
m-holger 3dde66ddcd Refactor JSON::writeNext 2023-01-28 14:49:32 -05:00
m-holger dfa7d414f5 Refactor JSON::writeClose 2023-01-28 14:49:32 -05:00
Jay Berkenbilt cb4debe75f Add release note about performance improvements 2023-01-28 13:44:40 -05:00
Jay Berkenbilt 1308c45090 Implement --remove-restrictions (fixes #833) 2023-01-28 13:42:19 -05:00
Jay Berkenbilt fe11f13d63 Add stub for --remove-restrictions 2023-01-28 13:24:45 -05:00
Jay Berkenbilt acfc9db051 QPDFJob: switch to C++11-style field initializers 2023-01-28 13:24:30 -05:00
m-holger d16308b3f5 Tune QPDFWriter::writeString etc methods
Use string_view parameters and call pipeline write methods directly.
2023-01-23 07:00:58 -05:00
m-holger e8cdc46286 Tidy QPDFXRefEntry creation 2023-01-21 18:18:15 -05:00
Jay Berkenbilt e4e0f40fc0 Fix annotations properly for page with no /Resources (fixes #827) 2023-01-09 07:31:39 -05:00
Jay Berkenbilt 126b026937 Add .cache to .gitignore -- created by clangd 2023-01-09 07:30:49 -05:00
m-holger aefb8ff9ef Refactor QPDFWriter::writePad 2023-01-08 13:33:10 -05:00
m-holger 8363657cf3 Change QPDFWriter::object_queue to std::vector 2023-01-08 13:33:10 -05:00
m-holger 9c216a06d9 Tune QPDFWriter::enqueueObject 2023-01-08 13:33:10 -05:00
Jay Berkenbilt 98dff46310 TODO updates 2023-01-07 15:25:05 -05:00
m-holger 60538f1958 Change QPDFParser::parse to use QPDFTokenizer::nextToken 2023-01-07 15:24:51 -05:00
m-holger b252e70cb6 Add new methods QPDFTokenizer::getType, getValue, getRawValue and getErrorMessage 2023-01-07 15:24:51 -05:00
m-holger f689769cca Refactor QPDFTokenizer::readToken 2023-01-07 15:24:51 -05:00
m-holger 863d95e567 Add new method QPDFTokenizer::nextToken 2023-01-07 15:24:51 -05:00
m-holger a07d2b4190 Only build QPDFTokenizer::val for name and string tokens
For all other token types val and raw_val are identical.
2023-01-07 15:24:51 -05:00
m-holger 59191ebbc4 Tune QPDFWriter::unparseObject 2023-01-07 13:27:17 -05:00
m-holger 942a2c3f68 Add new function QUtil::hex_encode_char 2023-01-06 18:42:12 -05:00
m-holger 1326ff7f79 Inline QPDFObjectHandle::dereference 2023-01-02 14:15:16 -05:00
Jay Berkenbilt bf477fbb96 Do double indirect test correctly 2023-01-01 07:33:34 -05:00
m-holger 2611f42c36 Bump version to 11.3.0 2022-12-31 19:16:38 -05:00
m-holger 56c923d109 Add QPDFObjectHandle operator bool 2022-12-31 19:16:38 -05:00
m-holger d7b470761b Remove QPDFObjectHandle::Factory and ObjAccessor 2022-12-31 19:16:38 -05:00
m-holger 432f417429 Add new methods QPDFObjectHandle::getObj and getObjectPtr
Also, make QPDFObjectHandle(std::shared_ptr<QPDFObject> const&) public.
2022-12-31 19:16:38 -05:00
Jay Berkenbilt ce8e63cb9a Add test case for broken indirect object reference
...where the first "number" is an indirect object that happens to be a
number.
2022-12-31 15:12:58 -05:00
Jay Berkenbilt 234e323743 Use authenticated API call for github API for better rate limits 2022-12-31 15:05:48 -05:00
m-holger 3f567ae02d Refactor dictionary processing loop in QPDFParser::parse 2022-12-31 14:37:35 -05:00
m-holger d67a54ae93 Tune parsing of dictionaries in QPDFParser::parse
Use move semantics for dictionary creation.
2022-12-31 14:37:35 -05:00
m-holger 846504129f Remove redundant parameter qpdf from QPDFParser::warn 2022-12-31 14:37:35 -05:00
m-holger b19e06fd8b Change QPDFParser::setDescription to take a shared_ptr<QPDFObject> parameter 2022-12-31 14:37:35 -05:00
m-holger 8391022416 Avoid inserting direct null objects into olist 2022-12-31 14:37:35 -05:00
m-holger 9da50ca360 Change olist variable in QPDFParser::parse to vector<shared_ptr<QPDFObject>> 2022-12-31 14:37:35 -05:00
m-holger e91e642cf3 Change object variable in QPDFParser::parse to shared_ptr<QPDFObject> 2022-12-31 14:37:35 -05:00
m-holger ec35156ab0 Refactor QPDFValue::getDescription
Remove parameters and return the description.
2022-12-31 10:23:59 -05:00
m-holger 0ef2def8ad Delay adding offsets to object descriptions until necessary 2022-12-31 10:23:59 -05:00
m-holger c833c25499 Delay adding ObjGen to object descriptions until necessary 2022-12-31 10:23:59 -05:00
m-holger e684d8169b Make QPDFValue::object_description a shared pointer 2022-12-31 10:23:59 -05:00
m-holger 218f069a69 Add new method QPDFObject::setDefaultDescription 2022-12-31 10:23:59 -05:00
m-holger d03ca88275 Refactor QPDFParser::setDescriptionFromInput and rename to setDescription
Set parsed offset at the same time as setting description.
2022-12-31 10:23:59 -05:00
Jay Berkenbilt dab48544d2 Diagnose CI failure on download-external-libs 2022-12-31 09:50:15 -05:00
m-holger 6cbc55a5b5 Add new virtual method QPDFObject::getStringValue
Avoid dynamic casting.
2022-12-31 09:31:07 -05:00
m-holger b0457b37e2 Update doc comment for QPDF::fixDanglingReferences 2022-12-31 09:28:28 -05:00
m-holger 0ca44ef84c Fix QPDFObjectHandle::isScalar
Exclude uninitialized, destroyed and reserved objects.
2022-12-31 09:27:19 -05:00
m-holger 383f5a0077 Refactor QPDFWriter::enqueueObject
Move test for m->linearized outside loop.
2022-12-31 09:22:45 -05:00
m-holger 2693a082ab Fix check for direct nulls in QPDFParser::parse 2022-12-15 13:07:42 -05:00
Jay Berkenbilt 5057bfa642 Fix job.subs (generate_auto_job) 2022-12-13 07:23:18 -05:00
Jay Berkenbilt 2a6cc34e39 Merge branch 'patch-1' of https://github.com/AlisterH/qpdf into patch 2022-12-13 07:22:23 -05:00