Jay Berkenbilt
d31a7b76e7
Improve message for stream decoding error
...
Tweak the message so that we inform the user that we are mitigating
data loss.
2017-09-12 16:03:48 -04:00
Jay Berkenbilt
eaacf94005
Update C API with new QPDFWriter methods
2017-09-12 14:30:39 -04:00
Jay Berkenbilt
40ecba4172
Pl_DCT: Use custom source and destination managers ( fixes #153 )
...
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-09-07 22:59:11 -04:00
Jay Berkenbilt
cbb2614975
Fix command-line parsing for --rotate
2017-09-07 22:58:37 -04:00
Jay Berkenbilt
3ef1be9783
PNGFilter: Better range checking for columns
2017-08-31 07:26:58 -04:00
Jay Berkenbilt
ec7d74a386
Add test case for overflow in PNG filter ( fixes #150 )
2017-08-29 12:33:01 -04:00
Jay Berkenbilt
1868a10f8b
Replace all atoi calls with QUtil::string_to_int
...
The latter catches underflow/overflow.
2017-08-29 12:28:32 -04:00
Jay Berkenbilt
742190bd98
Pl_PNGFilter: disallow columns = 0
2017-08-29 12:28:32 -04:00
Jay Berkenbilt
6d46346eb9
Detect integer overflow/underflow
2017-08-29 12:28:32 -04:00
Jay Berkenbilt
d7d446e0b8
Remove valgrind -- address santizer is better
2017-08-28 22:28:12 -04:00
Jay Berkenbilt
abb3191c32
Add tests for previous memory issues
...
Now that the test suite runs clean with address sanitizer, add some
test cases that previously were used to expose memory errors.
2017-08-28 22:28:12 -04:00
Jay Berkenbilt
e999bbae43
Fix memory leak with bad jpeg data
2017-08-28 22:16:45 -04:00
Jay Berkenbilt
c6872d2c70
Clean up circular references in QPDF_Stream
2017-08-28 22:16:31 -04:00
Jay Berkenbilt
c16aa1aca7
Add testing with clang to release checklist
2017-08-28 13:12:03 -04:00
Jay Berkenbilt
4f8c734d8e
Missing free in some test code
...
There was a missing free causing a memory leak in some test code. The
memory leak was not in library code.
2017-08-26 22:04:49 -04:00
Jay Berkenbilt
728dc9e6d8
Fix error caught by clang
2017-08-26 21:51:17 -04:00
Jay Berkenbilt
dea704f0ab
Pad keys to avoid memory errors ( fixes #147 )
2017-08-26 21:35:59 -04:00
Jay Berkenbilt
021c229331
Fix Pl_Flate memory leak on error ( fixes #148 )
2017-08-25 22:26:53 -04:00
Jay Berkenbilt
ad527a64f9
Parse iteratively to avoid stack overflow ( fixes #146 )
2017-08-25 21:56:45 -04:00
Jay Berkenbilt
85f05cc57f
Detect xref pointer infinite loop ( fixes #149 )
2017-08-25 19:58:31 -04:00
Jay Berkenbilt
2d0c68735b
README note about debugging
2017-08-25 19:58:18 -04:00
Jay Berkenbilt
46728e49cc
Fix from cygwin package maintainer
...
Resolve link error on cygwin
2017-08-24 17:41:30 -04:00
Jay Berkenbilt
278852f5aa
TODO
2017-08-22 19:26:36 -04:00
Jay Berkenbilt
1e52d33822
Bump soname to 18 and version to 7.0.b1
2017-08-22 16:50:48 -04:00
Jay Berkenbilt
84113a572f
Fix doc installation
2017-08-22 16:50:48 -04:00
Jay Berkenbilt
55f19d3e1b
Windows: find DLLs recursively at installation
2017-08-22 16:22:30 -04:00
Jay Berkenbilt
70949cb4cb
Update TODO
2017-08-22 14:22:20 -04:00
Jay Berkenbilt
e452d9dca6
Spell check
2017-08-22 14:22:20 -04:00
Jay Berkenbilt
2a8cd4acdc
Convert README files to markdown
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
6219111ed7
Update references to README files
...
Most of the README files have been renamed. Refer to the new names.
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
dba228452d
Rename README files before converting to markdown
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
83ec09f66c
Do memory checks
...
Slightly improve memory cleanup in Pl_DCT
Make it easier to test with valgrind
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
85ef2cb6fd
README cleanup
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
014d1ab2ed
Reminder to use Windows paths for large file tests
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
fabff0f3ec
Limit token length during xref recovery
...
While scanning the file looking for objects, limit the length of
tokens we allow. This prevents us from getting caught up in reading a
file character by character while digging through large streams.
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
caf5e39c2e
Fix compiler warnings for clang/mac OS X
2017-08-22 14:13:10 -04:00
Jay Berkenbilt
6884ad2ead
Fix logic error in recovery
...
A stray semicolon caused a condition to be incorrectly applied during
stream length recovery.
2017-08-22 07:19:41 -04:00
Jay Berkenbilt
ce435222b2
Push QPDFWriter member variables into a nested class
2017-08-21 22:04:07 -04:00
Jay Berkenbilt
a8c93bd324
Push QPDF member variables into a nested class
...
Pushing member variables into a nested class enables addition of new
member variables without breaking binary compatibility.
2017-08-21 21:35:11 -04:00
Jay Berkenbilt
8288a4eb3a
Update copyright to 2017
2017-08-21 21:18:47 -04:00
Jay Berkenbilt
198856a825
Improve pclm parameter settings
2017-08-21 21:05:48 -04:00
Jay Berkenbilt
8ab52fa558
Combine writePCLm with writeStandard
...
Reduce code duplication
2017-08-21 21:05:48 -04:00
Jay Berkenbilt
9f60a864a0
Combine PCLm header into writeHeader
2017-08-21 21:05:47 -04:00
Jay Berkenbilt
f08ce00e62
Add tests for PCLm
...
Files written in PCLm mode have to be created in a very specific way.
qpdf doesn't know how to create PCLm files from scratch. All it knows
how to do is to write an already valid file in a suitable way.
Therefore there is no command-line support for PCLm.
2017-08-21 21:05:47 -04:00
Jay Berkenbilt
4b908ade70
Update header documentation and ChangeLog entry for PCLm
2017-08-21 21:05:44 -04:00
Jay Berkenbilt
adbcfcff2d
Remove duplicated coverage cases
...
Remove duplicated coverage cases from Sahil's code so existing test
suite passes.
2017-08-21 18:55:02 -04:00
Sahil Arora
b19210fa7d
QPDFWriter: Add setPCLm() and writePCLm() methods
...
* Add support for PCLm using setPCLm() and writePCLm() methods in
QPDFWriter.hh and QPDFWriter.cc
* Add a function writePCLmHeader() for PCLm header in QPDFWriter
2017-08-21 18:55:02 -04:00
Jay Berkenbilt
3b170ab062
Update TODO
2017-08-21 17:52:11 -04:00
Jay Berkenbilt
9f95a37e38
TODO cleanup
2017-08-21 17:48:57 -04:00
Jay Berkenbilt
389396dbbf
Support Windows builds with MSYS2
...
Replace the old msys, mingw-w64, ActiveState perl setup with MSYS2.
This greatly simplifies the Windows build. This was facilitated by the
need to incorporate JPEG.
2017-08-21 17:44:22 -04:00