aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2019-06-18Remove qpdf_read_memory_fuzzerJay Berkenbilt
2019-06-15Run tests with sanitizers in CIJay Berkenbilt
2019-06-15As a test suite, run stand-alone fuzzer on seed corpusJay Berkenbilt
Temporarily skip fuzz tests on Windows. There are Windows-specific failures to address later.
2019-06-15Populate seed corpusJay Berkenbilt
2019-06-15Add corpus from previous fuzzerJay Berkenbilt
This is the set of files from the latest corpus of running the older fuzzer (qpdf_read_memory_fuzzer) at the time of adding the new fuzzer (qpdf_fuzzer) after running a merge operation to minimize the corpus.
2019-06-15Add test files from oss-fuzz bugs (fixes #335)Jay Berkenbilt
2019-06-15Fix problems found in fuzz corpusJay Berkenbilt
2019-06-15Implement fuzzer with good coverageJay Berkenbilt
2019-06-15Give up reading objects with too many consecutive errorsJay Berkenbilt
2019-06-15Eliminate one potential integer overflowJay Berkenbilt
There are more to handle, but this resolves an issue already caught by oss-fuzz.
2019-06-14oss-fuzz-build: support branch switchingJay Berkenbilt
2019-06-13oss-fuzz initial integrationJay Berkenbilt
2019-06-12TODOJay Berkenbilt
2019-06-12Fix typo (#334)Marco Scarpetta
2019-06-10Commit forgotten test filesJay Berkenbilt
2019-06-09Handle empty DecodeParams array for (fixes #331)Jay Berkenbilt
On read, ignore /DecodeParms when empty list; on write, delete it. Some files have been found that include an empty list for /DecodeParms, but this is not technically compliant with the spec, and the only sensible interpretation is to treat it as if there are no decode parameters.
2019-05-18Regenerate autofilesrelease-qpdf-8.4.2Jay Berkenbilt
2019-05-18Prepare 8.4.2 releaseJay Berkenbilt
2019-05-18Provide link to public key fileJay Berkenbilt
2019-05-16TODOJay Berkenbilt
2019-05-16Fix Windows memory error (fixes #330)Jay Berkenbilt
2019-04-28Prepare 8.4.1 releaserelease-qpdf-8.4.1Jay Berkenbilt
2019-04-28Improve Unicode filename testingJay Berkenbilt
Remove dependency on the behavior of perl for reliable creation of Unicode file names on Windows.
2019-04-28Remove stray commentJay Berkenbilt
2019-04-22Fix typoJay Berkenbilt
2019-04-21Spell checkJay Berkenbilt
2019-04-21Compare versions between CLI and libraryJay Berkenbilt
2019-04-21Add --remove-page-labels option (fixes #317)Jay Berkenbilt
2019-04-21Add --keep-files-open-threshold (fixes #288)Jay Berkenbilt
2019-04-21Support Unicode in filenames (fixes #298)Jay Berkenbilt
2019-04-21Tighten isPageObject (fixes #310)Jay Berkenbilt
2019-04-21Document that linearize disables qdf (fixes #312)Jay Berkenbilt
2019-04-21Revert preservations of outlines with --split-pagesJay Berkenbilt
The preservation of outlines didn't provide very useful behavior anyway as it copied all outlines but most didn't work. This implementation also caused a very significant performance hit and so is being reverted until a proper solution can be coded. The eventual solution will not be compatible with the reverted solution anyway, so it's best not to leave this in.
2019-04-21TODO: ABI noteJay Berkenbilt
2019-04-21Note about -fvisibilityJay Berkenbilt
2019-03-12Undefined functions because of missing std:: or header. (#295)Thorsten Schöning
* [bcc32 Error] QPDF.cc(375): E2268 Call to undefined function 'atof' Full parser context QPDF.cc(358): parsing: void QPDF::parse(const char *) * [bcc32 Error] QPDFTokenizer.cc(183): E2268 Call to undefined function 'strtol' Full parser context QPDFTokenizer.cc(163): parsing: void QPDFTokenizer::resolveLiteral() * [bcc32 Error] pdf-split-pages.cc(52): E2268 Call to undefined function 'exit' Full parser context pdf-split-pages.cc(50): parsing: void usage() * PR #295: Including "cstdlib" should be replaced with "stdlib.h" to be more consistent. At the same time I changed the order of the surrounding includes to reflect alphabetical order, because at some files this already have been the case.
2019-03-11Fix C++ exception handling when -fvisibility=hidden (#302)jbarlow83
Fix C++ exception handling when -fvisibility=hidden Ensure that QPDFExc and QPDFSystemError are marked visible, so that their typeinfo will not be suppressed when -fvisibility=hidden. Details: https://gcc.gnu.org/wiki/Visibility
2019-03-11Don't open more than 50 files.Thorsten Schöning
Embarcadero C++Builder doesn't support more than 50 files open at the same time for legacy 32 Bit apps, which makes a test fail trying to open more than that many files. This changes the number of open files for that test to far less to make the test succeed. Alternatively one could reduce the hard coded number of 200 in QPDF itself, which I didn't do currently because it needs adoption of manuals etc. and is something which needs to be discussed with the author of QPDF. I guess chances are better to get the test changed upstream. This fixes #288: https://github.com/qpdf/qpdf/issues/288
2019-03-11[bcc32 Error] QPDF.hh(803): E2247 'QPDF::Members::resolving' is not accessibleThorsten Schöning
Full parser context QPDF.cc(2): #include ..\..\..\..\src\include\qpdf\QPDF.hh QPDF.hh(48): class QPDF QPDF.hh(1380): decision to instantiate: QPDF::ResolveRecorder::ResolveRecorder(QPDF *,const QPDFObjGen &) --- Resetting parser context for instantiation... QPDF.hh(799): parsing: QPDF::ResolveRecorder::ResolveRecorder(QPDF *,const QPDFObjGen &)
2019-03-11[bcc32 Error] QPDFObjectHandle.hh(911): E2247 ↵Thorsten Schöning
'QPDFObjectHandle::Members::obj' is not accessible Full parser context Pl_QPDFTokenizer.cc(1): #include ..\..\..\..\src\include\qpdf\Pl_QPDFTokenizer.hh Pl_QPDFTokenizer.hh(29): #include ..\..\..\..\src\include\qpdf/QPDFObjectHandle.hh QPDFObjectHandle.hh(51): class QPDFObjectHandle QPDFObjectHandle.hh(1052): decision to instantiate: PointerHolder<QPDFObject> QPDFObjectHandle::ObjAccessor::getObject(QPDFObjectHandle &) --- Resetting parser context for instantiation... QPDFObjectHandle.hh(909): parsing: PointerHolder<QPDFObject> QPDFObjectHandle::ObjAccessor::getObject(QPDFObjectHandle &)
2019-03-11Merge pull request #294 from ams-tschoening/two_ops_same_valJay Berkenbilt
Two operands must evaluate to the same value.
2019-03-11"_setmode" and "_stricmp" are not available on Borland C++Builder, neither ↵Thorsten Schöning
the classic one nor newer ones based on CLANG.
2019-03-11[bcc32 Error] QPDF.hh(223): E2303 Type name expectedThorsten Schöning
Full parser context QPDF.cc(2): #include ..\..\..\..\src\include\qpdf\QPDF.hh QPDF.hh(47): class QPDF
2019-03-11[bcc32 Error] QPDF.hh(203): E2316 'vector' is not a member of 'std'Thorsten Schöning
Full parser context QPDF.cc(2): #include ..\..\..\..\src\include\qpdf\QPDF.hh QPDF.hh(46): class QPDF
2019-03-11Fix 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-02-26TODO: make it easier to find release signing keyJay Berkenbilt
2019-02-26Update release instructions for bashJay Berkenbilt
2019-02-14Merge pull request #290 from ams-tschoening/test_needs_binmodeJay Berkenbilt
The kfo-PDF files for testing need to be copied using "binmode"…
2019-02-14[bcc32 Error] test_driver.cc(1634): E2354 Two operands must evaluate to the ↵Thorsten Schöning
same type Full parser context test_driver.cc(208): parsing: void runtest(int,const char *,const char *)
2019-02-14[bcc32 Error] qpdf.cc(3837): E2354 Two operands must evaluate to the same typeThorsten Schöning
Full parser context qpdf.cc(3803): parsing: PointerHolder<Pipeline> ImageOptimizer::makePipeline(const std::string &,Pipeline *)