summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Update release notes, changelog and couple of tweaksghostpdl-9.12rc2gs912Chris Liddell2014-03-195-30/+8425
|
* Fix Segfaults caused by 'vertical stripe' fix (f18fac0).Ray Johnston2014-03-191-7/+7
| | | | | | | | The done flag is no longer needed and caused us to exit the while loop before processing enough of the data. Also, move_landscape_buffer could end up with position_curr == position_new so we were moving 'in place' (wasting time). Fix that.
* Fix to turn of BPC when we are using the Gray_to_K ICC profile.Michael Vrhel2014-03-192-1/+3
| | | | | | | This appears to be a bug in lcms. Will follow up with Marti. Also fix for tiff64nc. In the test tiff_compression_allowed we were missing the test for the 16 bit case. Surprisingly this commit results in progressions in the 8 bit device outputs too when we have a gray source and going to a CMYK device.
* Fix sporadic vertical stripes with planar fast image thresholding (pkmraw)Ray Johnston2014-03-141-44/+23
| | | | | | | | | In the landscape code, only the data for the last plane was being moved to the start of the contone data for the next 32 lines of output. Seen with -sDEVICE=pkmraw -dUsePlanarBuffer J8_landscape.ps but any landscape image could have the problem. New code moves all planes and only resets the ht_landscape parameters after all planes have been processed and output (via copy_planes).
* Update version number, release and copyright dates.Chris Liddell2014-03-1465-86/+86
|
* Add missing newline to memento error logging.Chris Liddell2014-03-141-0/+1
| | | | CLUSTER_UNTESTED
* Fix output color values of pkm and pkmraw for GrayValues > 2.Ray Johnston2014-03-131-4/+4
| | | | | | | In the header we indicate the max value is 255, so the output values need to be scaled to that, not the color_info.max_color. We stay with 255 since many viewers cannot display PPM files with other that 255 as the max (ignoring the max value in the header).
* Bug 695080: fix typo in the pngmono device declarationJames Cloos2014-03-131-1/+1
| | | | | | which caused pngmono to threshold rather than halftone at or above 150 dpi. No cluster differences.
* Bug 695090: Solve memory overwrite with pkmraw in planar mode.Robin Watts2014-03-134-2/+25
| | | | | | | | When using -dUsePlanarBuffer with the pnm devices, we run the underlying rendering in planar mode, but then expect 'getbits' to return chunky pixels. As such, the memory we allocate to 'getbits' into should be allocated for chunky mode, not for planar mode.
* Delete gs_fform.psChris Liddell2014-03-131-91/+0
| | | | | | If we want to cache forms, we should implement it properly. CLUSTER_UNTESTED
* Bug 695058: force correct struct ref_s sizeAndreas Schwab2014-03-131-0/+5
| | | | | | | | | | | | | | On compilers that tightly pack structures (i.e. don't pad to alignment boundaries), struct ref_s could end up as 14 bytes instead of 16 bytes, thus breaking requirement in the garbage collector. This is less than ideal, and would be better achieved using the same trick we use for the alignment of obj_header_s in base/gxobj.h, linking the structure size to the obj_align_mod, but as on the majority of systems struct ref_s is already 16 bytes, that results in a zero byte array which notable compilers (at least MSVC, and probably others) to error. No cluster differences,
* Remove deprecated glyph mapping code.Chris Liddell2014-03-132-327/+83
| | | | No cluster differences.
* Bug 693380: raise file path/name size limit to 4kChris Liddell2014-03-1310-267/+567
| | | | | | | And move as many cases of paths allocated on the stack to heap memory as is reasonable. No cluster differences.
* PDF interpreter - fix multiple xref stream readingKen Sharp2014-03-131-1/+5
| | | | | | | | | | | | | | | | | | Bug #695086 "**** Error: Trailer is not found." When reading Xref streams, the PDF interpreter resizes its internal xref tracking objects by looking at the /Size of the stream and making sure the objects are at least that big. However it did not account for the fact that an Xref stream may not start with object 0. In this case the first stream encountered had a /Size of 2, and an /Index of [6 0]. This meant that we allocated objects of size 2, then tried to store into location8, which naturally failed. This commit adds the /Index (starting object number) to the /Size before ensuring the objects are large enough. No differences expected
* Fixed typo in Devices.htm.Marcos H. Woehrmann2014-03-121-1/+1
|
* pdfwrite - remove deprecated codeKen Sharp2014-03-1211-270/+0
| | | | | Before the release of 9.06 I #ifdef'ed a load of code as deprecated. Nobody has found any problems, so I'm removing the code.
* Documentation - remove %ram% from the projects, as it is completedKen Sharp2014-03-121-12/+0
|
* Update documentation for the pdfwrite familyKen Sharp2014-03-125-205/+28
| | | | | | | | | | | | | | | | | devices.htm - change epswrite references to eps2write, note that support for language level 1 output is now removed. drivers.htm - alter pswrite to ps2write use.htm - alter epswrite to eps2write issues.htm - remove a surprisingly large number of documented issues which appear to be no longer issues. Note that epswrite is deprecated. ps2pdf.htm - improve the documentation of PDF/A and PDF/X output and correct the places where it was incorrect with the new colour management. No differences.
* Abbreviated escape sequence improvement.Henry Stiles2014-03-112-6/+11
| | | | | | | | Abbreviated escape sequences were not handled properly with commands that hold arbitrary amounts of data, like raster and font related commands. PCL shorthand is rarely used in this circumstance but it is legal. Thanks to Hin-Tak for the discovery and analysis of this problem.
* Remove GhostSVG.Chris Liddell2014-03-0914-3081/+11
| | | | No cluster differences.
* Remove SVG writer from Ghostscript/GhostPDLChris Liddell2014-03-095-857/+2
| | | | No cluster differences.
* Fix UseFastColor during clist playback.Ray Johnston2014-03-083-0/+3
| | | | | | | | Discovered with customer 532, the default_match was not set early enough in gsicc_get_link for the index to be correct, effectively disabling usefastcolor mode. As a result images could be rendered with ICC based color transform instead of the 'nocm' fastcolor methods.
* Use malloc/free for lcms(2) shared lib build.Chris Liddell2014-03-084-4/+47
| | | | No cluster differences.
* cast to silence a compiler warningKen Sharp2014-03-071-1/+1
|
* PS interpreter, vector devices and pdfwrite - remove setdash limit of 11Ken Sharp2014-03-076-18/+50
| | | | | | | | | | | | | | | | | | | | | | Bug #693916 "setdash does not accept more than 11 elements in the array argument" The PostScript interpreter was already capable of this, it simply required the limit check to be removed. The vector device needed to allocate and free an array of floats, rather than maintain a fixed size array. pdfwrite was teh most complex as it maintains a stack of gstates, and these also needed to be modified to allocate and free the dash array. However the gstate stack wasn't already a garbage collecting structure. Rather than going to the effort of turning it into one I've opted to allocate the dash pattern from non-gc memory. A few PCL files show differences with pdfwrite, because previously pdfwrite would throw an error (more than 11 elements in the dash array) and the stroked lines would degenerate into filled rectangles, whereas now they are drawn as stroked lines with a correct dash pattern. This is much more efficient. The clist remains unmodified, Ray assures me that it will be handled there without problems.
* Fix UseFastColor ignored for pages with transparency.Ray Johnston2014-03-051-0/+1
| | | | Found when researching problem from customer 532.
* Fix problem with -d***Values=16 and bitrgb device.Ray Johnston2014-03-051-7/+9
| | | | | | | | | The max_gray and max_color would confuse the gx_device_must_halftone macro because setting -dGrayValues=16 would end up setting the max_gray and max_color to 31 (0x1f) which does NOT halftone. with the change setting to 16 values doesn't change the bpc if put_params is called again. Also remove allowing -dGrayValues=32 from supported choices.
* pdfwrite revert 3894e9c8a3ab125c82048da3bf81515500bb2da0Ken Sharp2014-03-051-0/+4
| | | | | | | | | Bug #695083 " Regression: pdfwrite DEVICE generates extra page with -dLastPage= option" This wasn't a customer bug report, and it doesn't work well with PCL, when specifying -dLastPage, so I've decided just to revert it. A very few PCL files are flagged by the cluster as different, but there are no bmpcmp diffs.
* Bug 695007: Fix problems with unicode chars in TEMP path.Robin Watts2014-03-043-31/+56
| | | | | | | | | | | | | | If there are unicode chars in the temporary path (either that given by TMPDIR, TEMP or windows own GetTempPath functions) when opening a scratch file, we mishandle them. This commit improves the behaviour to treat paths consistently as UTF8. This incorporates changes from Paul Gardiner to make the winrtsup.cpp functions use wide chars. This simplifies the functions and integrates better with the calling code. Also fix some uses of sizeof where size in chars was required.
* Fix pointer-usage bug in GetTempFileNameWRTPaul Gardiner2014-03-041-3/+3
|
* pdfwrite - do not apply the 'Default*' colour spacesKen Sharp2014-03-041-0/+4
| | | | | | | | | | | | | | | | | | | | | | | Noticed while testing by Chris. The PDF spec says that if any of DefaultGray, DefaultRGB or DefaultCMYK are present in a PDF page, then we should use those to do a conversion to device-independent colour space for colours specified in the matching Device* space. This is broadly equivalent to the UseCIEColor PostScript user parameter but unlike that parameter the user has no control over it. Previously we applied this conversion but it seems unreasonable to do this for pdfwrite as this will convert a PDF using device spaces into a PDF using ICCBased spaces. Accordingly we now test the device properties and for HigLevel devices we do *not* perform this conversion. If the conversion really is desired then setting -dUseCIEColor will perform it. This results in a very few files showing differences, neither progressions nor regressions, merely different. However the pdfwrite warning about use of UseCIEColor does go away.
* Bug 694832: add an explicit flag for TTF notdefChris Liddell2014-03-042-14/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous solution for this issue "overloaded" an existing workaround for pdfwrite. Unfortunately, a clash between pdfwrite's needs and FAPI's meant it did not work all the time. So, when loading a TTF for use in a PDF, add a new flag to the font dictionary to tell the FAPI code whether to render a Truetype notdef. Several differences show up on the cluster - the following are progressions compared to Acrobat: Bug689757.pdf Bug691031.pdf Bug691221.pdf Bug693538.pdf Bug693646.ps Bug693711.pdf keyboard.pdf CATX1490.pdf IA3Z0815.pdf These are different from before, but since Acrobat can't even open these, I don't much care: 207ee6f24411fc4591d2b5a337c46de8-full.pdf 2123_-_MacExpertEncoding_badly_handled.pdf 764_-_heading_garbage.pdf
* remove a misleading commentKen Sharp2014-03-041-1/+0
|
* ps2write - fix missing %%BeginResource comment for FontFile objectsKen Sharp2014-03-043-3/+6
| | | | | | | | | Bug #695082 " ps2write: Some "%%BeginResource" DSC comments have only one "%" character" FontFile streams were being written with a "%%EndResource" comment, but the "%%BeginResource" comment was missing. No differences expected
* ps2write - fix a DSC commentKen Sharp2014-03-031-1/+1
| | | | | | | | | Bug #695082 "ps2write: Some "%%BeginResource" DSC comments have only one "%" character" A DSC comment was emitted using a printf format string without escaping the "%"s No differences expected.
* pdfwrite - fix commit 1d1d22976ce5b5e96d862c404ca80f189476bfedKen Sharp2014-02-271-5/+12
| | | | | | | | | Despite not throwing any regressions, there was a bug in this commit. A couple of places used the pprintld* routines, which *don't* accept the %"PRId64" sequence and this led ot us writing an invalid xref. Fixed here by using gs_sprintf instead.
* pdfwrite - fix FastWebView for big-endian devicesKen Sharp2014-02-271-55/+55
| | | | | | | | | Bug #695075 " Creating "optimized" PDF on Big-endian OS gives errors when view the PDF indicating PDF is not right" This commit applies all the changes supplied by Jonathan Dagresta of SDL, see the bug report for details. No differences expected.
* Disable threshold array based image optimization for depth > 1.Ray Johnston2014-02-261-2/+2
| | | | | | The monochrome image case in gximono.c already checked for depth == 1 but the gxicolor.c code was missing this. These can be removed when the gxht_thresh.c code is enhanced for greater bit depths.
* ps2write - add a feature to customise the output for specific devicesKen Sharp2014-02-267-48/+92
| | | | | | | | | | | | | Bug #695070 "Customer would like a way to specify printer specific features in ps2write device" This commit adds two new distiller params, specific to ps2write, PSDocOptions and PSPageOptions, which are described in detail in the ps2ps2.htm document. These allow an end user to specify PostScript (normally device-specific configuration) which can be injected into a DSC compliant file at the documet level and at the individual page level. No differences expected
* Fix bug 695054, segfault caused by stale pointer in pattern-clist device.Ray Johnston2014-02-252-0/+2
| | | | | | | | | | The pattern-clist device could be left allocated in stable memory after the pattern was removed from the pattern cache. The pattern instance could be freed by a subsequent restore since it was not in stable memory. GC trace of the chunks would then reference the stale pinst pointer. Also, the heap pointer needs to be valid in ialloc_validate_spaces 'state' since it can be used for error output and this could cause a segfault.
* Fix Bug 694685 - Seg faults found by fuzzing in sfopen.Henry Stiles2014-02-241-5/+3
| | | | | | | | | PCL would continue processing with a corrupt font. This could lead to bad memory accesses as demonstrated by the fuzzing example. For now, we return an error when a corrupt font is encountered and end the job. Likely, a lighter approach is called for: continue process without defining the font. This would be a bit more involved and we'll consider it if users report HP precedent for the behavior.
* Move ram file system memory to 'stable' memoryKen Sharp2014-02-241-9/+9
| | | | | | | | | | The RAM file system was using regular GC'ed memory for its storage, which is subject to save and restore. The RAM file system should not, of course, be subject to save and restore! This commit prevents save and restore affecting the memory for the ramfs No differences expected.
* Bug 694880 and bug 694904: prevent heap overflow in opj_j2k_add_tlmarkerSimon Bünzli2014-02-231-4/+6
| | | | Signed-off-by: Henry Stiles <henry.stiles@artifex.com>
* Bug 694906: fix potential heap overflow in opj_t2_read_packet_headerShailesh Mistry2014-02-231-2/+6
| | | | Signed-off-by: Henry Stiles <henry.stiles@artifex.com>
* Make the OpenJPEG callbacks static.....Chris Liddell2014-02-201-6/+6
| | | | | | and give them names more likely to be unique (just for debugging convenience). No cluster differences.
* Fix pngalpha when PDF has transparency. Bugs 687630, 693024 and 695042.Ray Johnston2014-02-181-2/+47
| | | | | | | | We needed a pngalpha_put_image procedure to properly collect the pdf14 compositor alpha value. Note that this is NOT simple 0 or 1 alpha, but the actual effective page level opacity from the PDF. Note that some viewers may not correctly display these despite this being part of the PNG spec.
* Fix bug 695405. The psdcmykog device should not lock num_components.Ray Johnston2014-02-151-4/+0
| | | | | | | This regression was introduced with an attempt to fix SeparationOrder handling, but is not needed because we throw an error when there is an attempt to set the SeparationOrder, and the device is confused when the num_components is reset in the open_device procedure.
* Improve chunk allocator performance using a doubly linked list (bug 694985)Ray Johnston2014-02-141-114/+78
| | | | | | Thanks to Norbert Janssen for the linked list logic. Also make a couple of other improvements in the free_object logic and use a separate structure for the freelist to avoid confusion with object nodes.
* xps: Fix memory leaks in xpszip.c when handling errors.Tor Andersson2014-02-141-10/+48
| | | | Thanks to Norbert Janssen.
* ps2write - more colour conversion workKen Sharp2014-02-142-4/+26
| | | | | | | | | | | | | | | Bug #694774 When outputting to PostScript we don't preserve certain colour spaces which either cannot be represented in PDF (CIEBased) or in level 2 PostScript (ICCBased/Lab/DeviceN) are not preserved. These should be written as device colours instead, but this wasn't always happening correctly. This commit should resolve this, and should now make it possible (but still inadvisable) to use -dUseCIEColor with both pdfwrite and ps2write. A small number of files show (frankly imperceptible) colour shifts with ps2write with this change.