Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-12-10 | Handle bitstream overflow errors more gracefully (fixes #581) | Jay Berkenbilt | |
* Make it a runtime error, not a logic error * Include additional information * Capture it properly in checkLinearization | |||
2021-11-04 | Add QIntC::range_check_subtract | Jay Berkenbilt | |
2021-02-23 | Spell check | Jay Berkenbilt | |
2021-02-18 | Add QUtil::path_basename | 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-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-01-24 | Use new QPDF{Name,Number}TreeObjectHelper API | 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. | |||
2020-12-28 | Test empty function detection | Jay Berkenbilt | |
2020-11-21 | Handle negative numbers in QIntC::range_check (fuzz issue 26994) | 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-25 | Make libtests depend on qpdf | Jay Berkenbilt | |
We need to run qpdf --show-crypto. | |||
2020-10-21 | Protect numeric conversion against user's locale (fixes #459) | Jay Berkenbilt | |
2020-10-18 | Stop using InputSource::unreadCh | Jay Berkenbilt | |
2020-10-16 | InputSource::unreadCh -- only unread most recently read character | Jay Berkenbilt | |
This is all that ever worked. The test suite was trying to do something different from ClosedFileInputSource. | |||
2020-04-10 | Use more references when iterating | Jay Berkenbilt | |
When possible, use `for (auto&` or `for (auto const&` when iterating using C++-11 style iterators. | |||
2020-04-06 | Delegate random number generation to crypto provider (fixes #418) | Jay Berkenbilt | |
2020-04-05 | JSON: implement pattern keys in schema | Jay Berkenbilt | |
2020-04-04 | Allow qpdf to be built on systems without wchar_t (fixes #406) | Jay Berkenbilt | |
2020-02-18 | libtests/cxx11.cc: fix build with gcc 4.8 | Fabrice Fontaine | |
Build fails on gcc 4.8 since version 9.1.1 and commit 752416554086d5d34323bc14164d5084db83cfbd: libtests/cxx11.cc: In function 'void do_regex()': libtests/cxx11.cc:347:42: error: 'strlen' is not a member of 'std' std::cregex_iterator m3(str7, str7 + std::strlen(str7), expr4); ^ To fix the build failure, add missing include on cstring Fixes: - http://autobuild.buildroot.org/results/ad7fb68ae87850a85509eed80fd0cae8721b10c5 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> | |||
2020-01-14 | Pull wmain -> main code from qpdf.cc into QUtil.cc | Jay Berkenbilt | |
2020-01-13 | QUtil::read_lines_from_file: optional EOL preservation | Jay Berkenbilt | |
2020-01-13 | Refactor QUtil::read_lines_from_file | Jay Berkenbilt | |
This commit adds the preserve_eol flags but doesn't implement EOL preservation yet. | |||
2020-01-13 | Add std::regex to c++11 feature tests | Jay Berkenbilt | |
2019-11-09 | Allow odd/even modifiers in numeric range (fixes #364) | Jay Berkenbilt | |
2019-11-09 | Run libtests for crypto with all available providers | Jay Berkenbilt | |
If QPDF_CRYPTO_PROVIDER is set, just run the tests for the given provider. This is to support cases of running the entire test suite for each provider. If QPDF_CRYPTO_PROVIDER is not set, run the tests that exercise the cyrpto provider for each available provider. | |||
2019-11-09 | Increase coverage for RC4 testing | Jay Berkenbilt | |
2019-11-09 | See if C++11 features work | Jay Berkenbilt | |
2019-09-17 | Don't assume char is signed in int conversion tests (fixes #361) | Jay Berkenbilt | |
2019-08-31 | Add remove_file and rename_file to QUtil | Jay Berkenbilt | |
2019-08-31 | spell check | Jay Berkenbilt | |
2019-08-30 | Add getRefcount to PointerHolder test | Jay Berkenbilt | |
2019-08-18 | SparseOHArray | Jay Berkenbilt | |
2019-06-22 | Add QUtil::read_file_into_memory | Jay Berkenbilt | |
This code was essentially duplicated between test_driver and standalone_fuzz_target_runner. | |||
2019-06-22 | Convert remaining public classes to use Members pattern | Jay Berkenbilt | |
Have classes contain only a single private member of type PointerHolder<Members>. This makes it safe to change the structure of the Members class without breaking binary compatibility. Many of the classes already follow this pattern quite successfully. This brings in the rest of the class that are part of the public API. | |||
2019-06-22 | Add missing #include <cstring> | Jay Berkenbilt | |
2019-06-21 | Fix bounds error in utf16_to_utf8 conversion | Jay Berkenbilt | |
2019-06-21 | Fix 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. | |||
2019-06-21 | QUtil: add unsigned int/string functions | Jay Berkenbilt | |
2019-06-21 | New safe type converters in QIntC | Jay Berkenbilt | |
2019-03-11 | Fix json serialization for {x | -1 < x < 1} (fixes #308) | Jay Berkenbilt | |
JSON serialization was preserving the value as presented, but JSON doesn't accept decimal values without a 0 before the decimal point. | |||
2019-01-27 | Convert pages to form XObjects | Jay Berkenbilt | |
Support conversion of pages to form XObjects and placement of form XObjects on pages. | |||
2019-01-27 | Move rectangle transformation into QPDFMatrix | Jay Berkenbilt | |
2019-01-17 | Add QUtil::possible_repaired_encodings | Jay Berkenbilt | |
2019-01-17 | Add status-reporting transcoders to QUtil | Jay Berkenbilt | |
2019-01-17 | QUtil::analyze_encoding | Jay Berkenbilt | |