aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/QPDFNameTreeObjectHelper.cc
AgeCommit message (Collapse)Author
2023-06-09Code tidy - Clang-Tidy rule modernize-use-equals-defaultm-holger
2023-06-09Code tidy - Clang-Tidy rule modernize-return-braced-init-listm-holger
2023-06-02Code tidy - reflow comments and stringsm-holger
2023-05-21Rerun clang-formatJay Berkenbilt
2023-05-21Globally replace 'this->m->' with 'm->'m-holger
Using search and replace.
2023-05-20Remove redundant 'virtual' specifiersm-holger
2022-08-07Resolve QPDF{Name,Number} tree helper linker issues (fixes #745)Jay Berkenbilt
This is a guess...I'm not sure exactly why there are linker issues or how to reproduce them.
2022-04-16Use anonymous namespaces for file-private classesJay Berkenbilt
2022-04-16Remove deprecated name/number tree constructorsJay Berkenbilt
Remove the name/number tree object helper constructors that don't take a QPDF&.
2022-04-16Use = default and = delete where possible in classesJay Berkenbilt
2022-04-04Programmatically apply new formatting to codeJay Berkenbilt
Run this: for i in **/*.cc **/*.c **/*.h **/*.hh; do clang-format < $i >| $i.new && mv $i.new $i done
2022-02-05Add operator ""_qpdf for creating QPDFObjectHandle literalsJay Berkenbilt
2022-02-04Add a blank line after the first header included in each sourceJay Berkenbilt
2021-02-08Make newly created name/number trees indirect objectsJay Berkenbilt
2021-01-26NNTree: rework iterators to be more memory efficientJay 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-26name/number trees: removeJay Berkenbilt
2021-01-25name/number trees: insertAfterJay Berkenbilt
2021-01-25name/number trees: newEmpty, increment/decrement end()Jay Berkenbilt
2021-01-25Implement repair and insert for name/number treesJay Berkenbilt
2021-01-24Add new constructors for name/number tree helpersJay Berkenbilt
Add constructors that take a QPDF object so we can issue warnings and create new indirect objects.
2021-01-24Add iterators to name/number tree helpersJay Berkenbilt
2021-01-24Reimplement name and number tree object helpersJay 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.
2019-06-21Fix sign and conversion warnings (major)Jay Berkenbilt
This makes all integer type conversions that have potential data loss explicit with calls that do range checks and raise an exception. After this commit, qpdf builds with no warnings when -Wsign-conversion -Wconversion is used with gcc or clang or when -W3 -Wd4800 is used with MSVC. This significantly reduces the likelihood of potential crashes from bogus integer values. There are some parts of the code that take int when they should take size_t or an offset. Such places would make qpdf not support files with more than 2^31 of something that usually wouldn't be so large. In the event that such a file shows up and is valid, at least qpdf would raise an error in the right spot so the issue could be legitimately addressed rather than failing in some weird way because of a silent overflow condition.
2018-12-22Add QPDFNameTreeObjectHelperJay Berkenbilt