Age | Commit message (Collapse) | Author | |
---|---|---|---|
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 | |
2019-01-17 | Bidirectional transcoding for win, mac, pdf, utf8, utf16 | Jay Berkenbilt | |
2019-01-06 | Add WinAnsi and MacRoman encoding | Jay Berkenbilt | |
2019-01-06 | Refactor QUtil::utf8_to_ascii | Jay Berkenbilt | |
2019-01-04 | Add QUtil::utf8_to_ascii | Jay Berkenbilt | |
2019-01-01 | Add Matrix class under QPDFObjectHandle | Jay Berkenbilt | |
2019-01-01 | Transformation matrix | Jay Berkenbilt | |
2018-12-25 | JSON::serialize -> unparse | Jay Berkenbilt | |
Unparse is admittedly strange, but I'd rather be strange and consistent, and everything else in the qpdf library uses unparse to serialize. (If you're reading this, the convention of using "unparse" comes from the "clu" programming language.) | |||
2018-12-22 | Move numrange code from qpdf.cc to QUtil.cc | Jay Berkenbilt | |
Also move tests to libtests. | |||
2018-12-22 | Add simple JSON serializer | Jay Berkenbilt | |
2018-08-14 | New exception class QPDFSystemError (fixes #221) | Jay Berkenbilt | |
2018-08-13 | Catch exceptions as const references (fixes #236) | Jay Berkenbilt | |
This fix allows qpdf to compile/test cleanly with gcc 8. | |||
2018-08-05 | ClosedFileInputSource: add method to keep file open | Jay Berkenbilt | |
During periods of intensive operation on a specific file, this method can reduce the overhead of repeated open/close operations. | |||
2018-06-23 | Fix typo | Jay Berkenbilt | |
2018-06-22 | Windows test workaround | Jay Berkenbilt | |
2018-06-22 | Add ClosedFileInputSource | Jay Berkenbilt | |
ClosedFileInputSource is an input source that keeps the file closed when not reading it. | |||
2018-06-21 | QUtil::toUTF16 | Jay Berkenbilt | |
2018-06-21 | Label qutil test output | Jay Berkenbilt | |
2018-05-05 | buffer test: fix memory leak in test code | Jay Berkenbilt | |
Forgot to delete a buffer in the test driver. There was no memory leak or memory error in any installed code. | |||
2018-03-06 | Pl_Buffer starts in a ready state | Jay Berkenbilt | |
2018-02-04 | Fix link order (fixes #176) | Jay Berkenbilt | |
Specify qpdf libraries before external ones. Specify LDFLAGS before libraries. This should eliminate remaining cases of qpdf builds favoring previously installed versions. | |||
2018-01-14 | Add QUtil::hex_decode | Jay Berkenbilt | |
2018-01-14 | Use correct link directory order (fixes #158) | Jay Berkenbilt | |
Make sure to link from the source tree before linking from the system. In many environments, this is necessary to allow a newly built qpdf to link properly instead of trying to link or resolve libraries from an older installed version. | |||
2018-01-14 | Add Pl_TIFFPredictor | Jay Berkenbilt | |
2018-01-14 | Add signed support to BitStream and BitWriter | Jay Berkenbilt | |
2018-01-14 | Rename png_filter -> predictors | Jay Berkenbilt | |
2017-12-26 | Add tests for new PNG filters | Jay Berkenbilt | |
2017-12-25 | PNG filter test images | Jay Berkenbilt | |
2017-12-25 | Correct errors in PNG filters and make use from library | Jay Berkenbilt | |
2017-09-08 | Pl_DCT: Use custom source and destination managers (fixes #153) | Jay Berkenbilt | |
Avoid calling jpeg_mem_src and jpeg_mem_dest. The custom destination manager writes to the pipeline in smaller chunks to avoid having the whole image in memory at once. The source manager works directly with the Buffer object. Using customer managers avoids use of memory source and destination managers, which are not present in older versions of libjpeg still in use by some Linux distributions. | |||
2017-08-29 | Replace all atoi calls with QUtil::string_to_int | Jay Berkenbilt | |
The latter catches underflow/overflow. | |||
2017-08-29 | Detect integer overflow/underflow | Jay Berkenbilt | |
2017-08-22 | Fix compiler warnings for clang/mac OS X | Jay Berkenbilt | |
2017-08-21 | Implement Pl_DCT pipeline | Jay Berkenbilt | |
Additional testing is added in later commits to be supported by additional changes in the library. | |||
2017-08-19 | Implement Pl_RunLength pipeline | Jay Berkenbilt | |
2017-08-11 | Remove PCRE | Jay Berkenbilt | |
2017-08-11 | Implement findFirst and findLast in InputSource | Jay Berkenbilt | |
Preparing to refactor some pattern searching code to use these instead of their own memchr loops. This should simplify the code that replaces PCRE. | |||
2017-07-30 | Allow reading command-line args from files (fixes #16) | Jay Berkenbilt | |
2017-07-30 | Detect input file = output file (fixes #29) | Jay Berkenbilt | |
2016-01-24 | Use RM_WS_ONLY_LINES in test | Thorsten Schöning | |
Some compilers output extra newlines in some cases. |