History of Ghostscript versions 9.xx

Table of contents

This document is a record of changes in Ghostscript releases numbered 9.xx. For earlier versions, see the the history documents:

History of Ghostscript versions 8.n
History of Ghostscript versions 7.n
History of Ghostscript versions 6.n
History of Ghostscript versions 5.n
History of Ghostscript versions 4.n
History of Ghostscript versions 3.n
History of Ghostscript versions 2.n
History of Ghostscript versions 1.n

For other information, see the Ghostscript overview.


Version 9.18 (2015-09-23)

This is the thirteenth full release in the stable 9.x series, and is a maintenance release.

Highlights in this release include:

For a list of open issues, or to report problems, please visit bugs.ghostscript.com.

Incompatible changes

No recorded incompatible changes.

Changelog

2015-09-29 15:32:52 +0100
Chris Liddell <chris.liddell@artifex.com>
60ecc24519fa3c5be80617bd88fd0489344fd617

Contents of CIDSystemInfo can be indirect references

Cope with that....

No cluster differences.

Resource/Init/pdf_font.ps


2015-09-25 14:36:11 +0100
Chris Liddell <chris.liddell@artifex.com>
6c1b1ccce595e6477c972c9bf927462986b343a2

More ICC reference counting problems

Fix a few ICC profile reference counting issues with LAB and Calibrated color
spaces.

No cluster differences.

psi/zicc.c


2015-09-24 21:09:53 -0700
Michael Vrhel <michael.vrhel@artifex.com>
f616e3be41a6c3a13ddda3dddf9d57d73edc32be

Avoid doing color linearity tests when they are not needed.

In the shading code there are several tests to determine if we
are sufficiently linear in our fill region. If not, it is further
divided. For certain color mappings we are always going to be linear
and do not need to check. We test for these now and avoid the check.
Cluster push reported 119 diffs. Checked them and they looked
reasonable. Differences in various gradient fills. The run time
numbers from the regression test improved significantly.
Going from a cpu time of 37:29:22 to 29:28:04 with gs going from
19:42:34 to 15:25:29

base/gxshade.c
base/gxshade.h
base/gxshade6.c
base/lib.mak


2015-09-24 11:44:23 +0100
Chris Liddell <chris.liddell@artifex.com>
b675dca5482eadece52ba917e1e492d9f30df618

gximono.c: fix use of color sample cache

When pulling multiple samples from the color cache (for example, for RGB and
CMYK) we should get the pointer to the first sample (from which we can work
through the samples) rather than the sample value itself.

Identified by Johannes Meixner.

No cluster differences.

base/gximono.c


2015-09-24 14:30:20 +0100
Chris Liddell <chris.liddell@artifex.com>
3a5faa7c23b323b7cdac8377a666c2fc64dc1990

Bug 696223: cope with empty %rom% returning an error

The romfs is always included now, but if there are no files (i.e. if we're using
the "dummy" romfs for COMPILE_INITS=0) it returns an "unregistered" error from
the "status" method.

This trips up the code for identifying the ICC profiles path, which stats the
default ICC profile path, which happens to be %rom%iccprofiles.

So, put the status call in a stopped context, and act accordingly.

No cluster differences.

Resource/Init/gs_lev2.ps


2015-09-24 09:32:22 +0100
Chris Liddell <chris.liddell@artifex.com>
67d03961a838a391f79fcb0fbbded02ca53ad2e9

Bug 696151: fix logic in gx_downscaler_get_bits_rectangle()

The logic about whether to use an interim buffer or not did not match between
gx_downscaler_init_planar() and gx_downscaler_get_bits_rectangle() causing the
latter to attempt to write into a buffer that had not been allocated, thus
crashing.

No cluster differences.

base/gxdownscale.c


2015-09-24 11:04:22 +0100
Chris Liddell <chris.liddell@artifex.com>
e35c4ca446faf442b558aa3dd2d2957e18d45ea4

Add words to release notes

about the revised directory structure, build and executable names

doc/History9.htm
doc/News.htm


2015-09-24 08:26:17 +0100
Chris Liddell <chris.liddell@artifex.com>
30021e7ba7cac7310cf0018746aad0ea1f2ee772

Add missing dependencies....

gsromfs0.c -> time_.h
iconfig.c -> gs.tr

No cluster differences.

base/lib.mak
psi/int.mak


2015-09-23 12:04:49 +0100
Chris Liddell <chris.liddell@artifex.com>
474e96f093527b1714df2f06dc66502a6d83db32

Remove gpdl from the default target list

No cluster differences

configure.ac
psi/msvc.mak


2015-09-22 09:12:33 +0100
Chris Liddell <chris.liddell@artifex.com>
dafc7774e523411a228d236612df03cab1b11c17

Delete the left-overs from the build reorg.

No cluster differences.

old-stuff/COPYING
old-stuff/Makefile
old-stuff/autogen.sh
old-stuff/common/cp.bat
old-stuff/common/gccdefs.mak
old-stuff/common/generic.mak
old-stuff/common/msvc_top.mak
old-stuff/common/msvcdefs.mak
old-stuff/common/mv.bat
old-stuff/common/pcdefs.mak
old-stuff/common/rm.bat
old-stuff/common/sgidefs.mak
old-stuff/common/ugcc_top.mak
old-stuff/common/unixdefs.mak
old-stuff/config.mak.in
old-stuff/configure.ac
old-stuff/main/pcl6_gcc.mak
old-stuff/main/pcl6_msvc.mak
old-stuff/win32/GhostPDL.sln
old-stuff/win32/ReadMe.txt
old-stuff/win32/language_switch.vcproj
old-stuff/win32/pcl.vcproj
old-stuff/win32/xps.vcproj
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/project.pbxproj
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/project.xcworkspace/contents.xcworkspacedata
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/GhostPDL.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/ghostscript.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/language_switch.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/pcl.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/svg.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/xps.xcscheme
old-stuff/xcode/Makefile
old-stuff/xcode/clang_wrapper.c
old-stuff/xcode/clang_wrapper.sh
old-stuff/xcode/resolve.sh


2015-09-22 09:10:02 +0100
Chris Liddell <chris.liddell@artifex.com>
0b78c7a692745084e7b9f328f4165af84eca57fe

Revise Make.htm.

Fix out of date links, remove long untested systems, and general cleanup.

No cluster differences.

doc/Make.htm


2015-09-22 08:20:07 +0100
Chris Liddell <chris.liddell@artifex.com>
e9e62834caf6b75248ea6e9ba558821834339075

Tweak the WinRT build for new build scheme.

No cluster differences.

old-stuff/winrt/GhostPDL.sln
windows/Ghostscript-winrt.sln
windows/ghostscript_rt.vcxproj


2015-09-17 21:21:46 -0500
Chris Liddell <chris.liddell@artifex.com>
01639146163f7e196658ba7feb98d5c1a2cb8c34

Bug 694180 (related): jbig2dec base streams error handling

Two problems:

First: when creating the jbig2dec context, you optionally pass it a function
pointer and data pointer to use to record error conditions. The data pointer
being used was the pointer to the Ghostscript stream state - which was allocated
in normal Postscript memory - i.e. subject to relocation by the garbage
collector. As this was stored as part of jbig2dec's internals, there was no
way for the garbage collector to move the pointer, and thus the location
was potentially nonsense.

Secondly, in testing the fix for above, it turns out that, in the event of an
error during JBIG2 decoding, there was no cleanup done - only the memory for
the stream state would be discarded (by the garbage collector), the jbig2dec
context was left to leak.

To fix the first problem, add a non-gc memory structure with the pointers
required for the jbig2dec error callback.

For the second problem, add a finalize method to the jbig2dec stream state
so the non-gc stuff can be cleaned up in the event of an error.

No cluster differences.

base/sjbig2.c
base/sjbig2.h


2015-09-18 09:49:55 -0500
Chris Liddell <chris.liddell@artifex.com>
94c98185fdc65a9e048303b3bbc40949f61b0fc3

jbig2dec: release huffman table memory properly

Freeing huffman table memory didn't use the jbig2dec allocator call, just called
"free" directly. Caused a crash if the caller uses a custom allocator.

No cluster differences.

jbig2dec/jbig2_huffman.c


2015-09-23 08:14:49 +0100
Ken Sharp <ken.sharp@artifex.com>
375fc31051400eda284cd450ea108317489ea8a0

remove an unused variable to silence a compiler warning

devices/vector/gdevpdtt.c


2015-09-22 14:15:06 -0700
Ray Johnston <ray.johnston@artifex.com>
adcbb5795f02903c71504faa9dd26fdfee69c9f3

Fix bug 696201. Regression caused by fast HT fixes commit 695065f2

The entire threshold array was not being initialized to the max value
when num_repeats > 1. Apparently this is rare.

base/gsht.c


2015-09-22 14:05:46 -0700
Ray Johnston <ray.johnston@artifex.com>
a711e36640bde6b4d76e51de5e2d57124bb49ff7

Get rid of "magic number" returns from compositor is_closing proc

Instead use enums that are somewhat mnemonic. We hate magic numbers.

base/gdevdflt.c
base/gdevp14.c
base/gscompt.h
base/gsovrc.c
base/gxclrast.c


2015-09-18 13:39:58 -0700
Ray Johnston <ray.johnston@artifex.com>
0d04e52b3b4bb2a0dd03d70d31630b3e79c0fb31

Convert constants used by 'is_closing' compositor proc to menmonic enums

These had used constants that were a source of wasted time when working on
compositors since one had to hunt around for the 'meaning' of constant
numeric values. Change to using a gs_compositor_closing_state enum with
somewhat meaningful names.

base/gdevdflt.c
base/gdevp14.c
base/gscompt.h
base/gsovrc.c
base/gxclrast.c
base/gxcomp.h


2015-09-22 20:36:02 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
c48fb6fb210b852d4156ea303c3ba0e9060c7a75

Bug 696052: Check that cloned image exists before proceeding further.

jbig2dec/jbig2_refinement.c


2015-09-18 23:15:40 +0100
Ken Sharp <ken.sharp@artifex.com>
54510dd67d4f1344fda4e913be9c70341e453fe8

pdfwrite - yet more symbolic font meddling

Bug #696207 "Creation of PDF/A-1b from PDF results in missing characters"

The previous fix for symbolic fonts could lead to a situation where we emitted
an embedded, subset, symbolic TrueType font, bu put a /Encoding in the font.

This is invalid for PDF/A-1 and also causes Acrobat to do strange things with
the CMAP subtable(s) in the font. This commit should ensure (by synchronising
the tests) that we don't emit symbolic TT fonts with an Encoding.

Checking with the test file for bug 695969 indicates that the code still
works for that case too.

This has unfortunatley required some re-organisation of data structure
declarations.

I think we won't be able to reliably have this work until the TrueType font
embedding code is rewritten.

In any event the heuristics seem improved again.

devices/vector/gdevpdtd.c
devices/vector/gdevpdtd.h
devices/vector/gdevpdtt.c


2015-09-18 20:22:25 +0100
Ken Sharp <ken.sharp@artifex.com>
128b24a5c42f0cb73f4b3c39fabb2fb46707af8a

txtwrite - cater for empty strings

Bug #696212 "txtwrite: pdfs generated by JasperReports cause segfault in gs"

The PDF file contains an operation of the form () Tj The empty string
means that we don't process the text (because there is none) resulting in
uninitialised data later.

Fixed by ignoring emtpy strings.

devices/vector/gdevtxtw.c


2015-09-15 10:24:53 +0100
Chris Liddell <chris.liddell@artifex.com>
478dda05a6a4b3b1f8ce2a934fb0f60870d2fc98

Fix pdf14 compositor/ICC reference counting problems.

One reference counting issue whereby the code originally assumed it would be
moving an existing ICC profile reference, rather than creating a new reference
(thus no reference counting was done) and it transpired that in certain cases
a new profile could end up being created - thus reference counting was required
to ensure that, in the case where a newly created profile was used, it would
also be freed as required. In this case, one of the places where the reference
was removed did not decrement the reference count.

Secondly, in the event of the compositor being interrupted (by an error or user
intervention) between push group and pop group operations, when we come to
finalize the compositor device, we have to emulate the ICC profile restorations
that happen during a pop group, so all the references and reference counts end
up back where they were when the push group happened.

No cluster differences.

base/gdevp14.c


2015-09-15 10:15:28 +0100
Chris Liddell <chris.liddell@artifex.com>
f894956b58e3e5c9a2238c0cd66a98d803c7c117

Fix memory leak with pattern clists.

The clist reader's ICC cache gets recreated every time we execute a clist,
but previously the code did not take action to clean it up, this the
reference count was wrong, and we leaked memory.

Whilst it may be preferable to have it persist, in the short term, it seems
safer to cleanup after clist playback, as that is functionally the same as the
existing behaviour.

No cluster differences

base/gxp1fill.c


2015-09-15 10:11:24 +0100
Chris Liddell <chris.liddell@artifex.com>
2432584e6bb6a257c47261430d1cd8ef3e71c9c4

Cleanup after error in clist

If an error (or interrupt) occurs during clist replay, ensure we tidy up
the memory buffer device that the clist renders into before propagating
the error.

No cluster differences

base/gxclread.c


2015-09-15 10:07:05 +0100
Chris Liddell <chris.liddell@artifex.com>
b7fffb5a7429cfd1f0716c98f1b71f57eda653dc

Change memcpy to memmove

valgrind reported overlapping memory regions in a memcpy, so change it to
memmove which copes with such cases.

No cluster differences.

base/gxclfile.c


2015-09-15 11:02:46 +0100
Chris Liddell <chris.liddell@artifex.com>
989f7afffdbf49d6b385f3e817a0dc7a736f13bc

Prevent crash with reference count debugging (-Z^)

The garbage collector makes no promises about the order in which objects are
swept. As a result, it is possible for a forwarding device to remain unswept
after its target has already.

To handle such relationships, the garbage collector leaves memory contents alone
until the entire sweep is complete, so the forwarding device's decrement of the
target reference count is safe. However, with rc debugging active, the debugging
code attempts to ascertain the object type by interrogating the memory header,
which the garbage has, by now, userped for it's own uses - causing a crash.

By setting the rc.memory pointer to NULL when the target device is finalized,
the rc debugging code is kept happy.

In the non-gc case, the finalize is the very last thing to happen before the
memory is actually freed, thus the memory pointer is moot by that stage.

No cluster differences.

base/gsdevice.c


2015-09-16 20:30:57 +0100
Ken Sharp <ken.sharp@artifex.com>
717a3d6e5e139d6cbb2474dbb44bf0ca2069d5b4

eps2write - convert path bounding box to user space from device space

Bug #696181 "BoundingBox wrong when using eps2write in AIX environment"

I can't test this on an AIX setup, but for me the test file was incorrect
on Windows anyway.

In order to find the marking extent of a (filled) path we intersect the
path with the current clipping path and check the extents of the resulting
rectangle against the extents of the current BBox.

However, the result of the intersection is in device space, and we did not
'undo' the resolution. Other places in the code *do* remove the scaling
due to resolution, so we simply adopt that here.

No differences expected.

devices/vector/gdevpdfd.c


2015-09-15 12:55:15 +0100
Ken Sharp <ken.sharp@artifex.com>
22dcf8215791732199f6b76a7d7e330b0b792931

Coverity ID #95039 - initialise a stack

I don't think its possible for this to be a problem, but its pretty cheap to
do.

devices/vector/gdevpsf1.c


2015-09-15 09:43:43 +0100
Ken Sharp <ken.sharp@artifex.com>
5772922322e908279196a77bddc6bd1d973f5f82

Coverity ID #94682 check and action a return value.

devices/vector/gdevpdfm.c


2015-09-14 13:38:03 +0100
Ken Sharp <ken.sharp@artifex.com>
c4d4f68db961ea0bebde67764fa3c7383277b6c2

pdfwrite force XMP metadata emission when creating PDF/A

Discovered while working on PCL -> PDF/A, we need to have XMP metadata
emitted for PDF/A compatibility.

devices/vector/gdevpdfe.c


2015-09-10 13:56:43 +0100
Ken Sharp <ken.sharp@artifex.com>
f077c60d6441d5dae58bcaeeab2977491f5dff66

Coverity ID #107437 check and action a return value

devices/vector/gdevpdfi.c


2015-09-09 14:35:52 +0100
Chris Liddell <chris.liddell@artifex.com>
0dd8e231284a6c898cd21bb9d6f3e096282b3907

Add a special finalize method for the pdf14 compositor

In the event of an error, the pdf14 compositor device can be part way through
accumulating its data. Add a finalize method to discard stuff that might remain
before the device itself is freed.

No cluster differences.

base/gdevp14.c


2015-09-08 09:30:16 +0100
Chris Liddell <chris.liddell@artifex.com>
28989d155efe5db7f2ea5f4477a7e654f5402470

Bug 696178: avoid var overflow with large CFF font

If a CFF/Type 2 font has a large number of (g)subrs, the remaining buffer size
when we come to recreate the font for Freetype could be larger than 64435
bytes, and this could overflow the usigned short parameter we pass to the
helper function which extracts and stores each (g)subr.

As I doubt we'll see a font with a single (g)subr of more than 65535 bytes, I'm
just clamping the value to the usigned short range.

No cluster differences.

base/write_t2.c


2015-09-07 20:32:35 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
08c278231e4fa357cb4a8b001b751b132819c739

Change cluster host from casper.ghostscript.com to cluster.ghostscript.com.

toolbin/localcluster/clusterpush.pl


2015-09-04 10:28:54 -0700
Ray Johnston <ray.johnston@artifex.com>
bd02324382fc0f97674ad29235600e498566fb16

Prevent leak if device subclassing fails.

Move a check earlier, before any allocations.
Also fix a divide by zero problem seen while testing with the spotcmyk
device and -dFirstPage=2 on tests_private/comparefiles/86554321.pdf

base/gdevdflt.c
base/gxdevndi.c


2015-09-03 08:53:31 +0100
Chris Liddell <chris.liddell@artifex.com>
0ed9597158122a9200b6e973fbb0810bbf97e1eb

Remove the moribund pdf_cslayer.ps etc.

THe BMC/BDC/EMC marked content operators are now handled fully in the PDF
interpreter "proper" and this original handling has not been touched or used
(or even built-in) since it's original authoring 7 years ago.

No cluster differences.

Resource/Init/pdf_cslayer.ps
psi/int.mak
psi/psromfs.mak


2015-09-01 09:54:00 +0100
Ken Sharp <ken.sharp@artifex.com>
66fc00c563bfbbb3736159f646b58666fe444c55

Don't require Type 42 fonts to have copyrigth information

Bug #696174 "Error: /invalidfont in --show--"

The problem occurs because the embedded type 42 fonts don't include a
Copyright entry in the names table. When copying fonts, we try to copy the
copyright information, and it fails which results in an invalid font error.

Clearly we want to copy the information if its present, but its absence
shouldn't be regarded as an error, so this commit simply ignores the return
value when we try to copy the copyright information.

base/gstype42.c


2015-08-31 22:24:25 -0700
Michael Vrhel <michael.vrhel@artifex.com>
57ed8b1f0accfa6364bf0fc0699d0bab22b79ac2

Fix mistake in spot color value collection in gprf device

devices/gdevgprf.c


2015-08-31 12:44:52 +0100
Ken Sharp <ken.sharp@artifex.com>
3bd0059f57389a935c8ec35a92fdb8d5263d4e1c

pdfwrite - a missed SMask case

Commit 937bfdbc0c6204ae0be40b1ed1c4bb880568d6be which was to fix a Coverity
detected problem uncovered a missing case in the new SMask handling. We need
to check for the soft mask ID having changed when we start accumulating a
pattern.

Good catch there from Coverity.

devices/vector/gdevpdfi.c


2015-08-31 08:39:45 +0100
Ken Sharp <ken.sharp@artifex.com>
1ca58566f41417aac93a5cba0b757ddfdb8bd2a7

Coverity ID #107342 another return value check

devices/vector/gdevpdfg.c


2015-08-31 08:36:41 +0100
Ken Sharp <ken.sharp@artifex.com>
937bfdbc0c6204ae0be40b1ed1c4bb880568d6be

Coverity ID #107346 check and action a return value

devices/vector/gdevpdfg.c


2015-08-27 11:10:31 -0700
Ray Johnston <ray.johnston@artifex.com>
55203d93e86974ee974c441d567c27b06507e98e

Remove the compressed_color_encoding that has not been used for a while.

base/gdevdbit.c
base/gdevdevn.c
base/gdevdevn.h
base/gdevp14.c
base/gxblend.h
base/gxblend1.c
devices/gdevtsep.c


2015-08-28 12:22:38 +0100
Robin Watts <robin.watts@artifex.com>
0877e6183221beb559e02e8aed87efa9cb65064a

Rename gproof device to gprf.

The device produces .gprf files, not .gproof ones, and gs
never actually touches a .gproof file, so the name is
definitely wrong as is.

devices/gdevgprf.c


2015-08-28 12:00:03 +0100
Chris Liddell <chris.liddell@artifex.com>
3d3982f844fed6d6cb092055980900289fb6a402

Add "safe" defaults for the FT and LCMS2 source dirs

So we don't risk (too much) finding spurious headers for wrong versions
when linking to shared libraries for Freetype and LittleCMS2, use the same
safe default ("src") as the other shared libs.

No cluster differences

configure.ac


2015-08-28 11:13:36 +0100
Chris Liddell <chris.liddell@artifex.com>
cdc41ce6ddbb7b0233645c750ccfbf6eb927a5c6

Add gprf device to Unix builds.

No cluster diffs.

configure.ac


2015-08-28 11:06:15 +0100
Chris Liddell <chris.liddell@artifex.com>
5ba6e5c4488b6dca2530e772086dd7d45d99709d

Check for _cmsCreateMutex in lcms2

When checking for a usable system lcms2 library, check that it contains the
_cmsCreateMutex() - that ensures we get a sufficiently up to date version

No cluster diffs

configure.ac


2015-08-26 12:11:34 +0100
Chris Liddell <chris.liddell@artifex.com>
c6c744cf1634bf7e8a90f4a404ee019ba73451d1

Update the example "fixed" makefiles

This provides an example/start point for unix-like systems that don't,
for whatever reason, want to use the autoconf build.

No cluster differences

base/unix-gcc.mak


2015-08-26 12:07:36 +0100
Chris Liddell <chris.liddell@artifex.com>
95acc209c0522c16c985b5916c1043471635e8e3

If no libtiff, leave out xpswrite

xpswrite depends on libtiff, so it libtiff isn't available we need to leave out
the xpswrite devices

No cluster differences

configure.ac


2015-08-27 09:45:49 -0600
Henry Stiles <henry.stiles@artifex.com>
3b20ec9955f6b7e48c90d9a021d1511e03b67977

Fixes PCL crash when a new ICC directory is specified on the command
line.

The library context must use the same allocator to create and free the
icc directory string. The memory parameter passed in is not necessarily
the same as the original. For example the PCL client wraps the
allocator to use the chunk allocator after the icc directory string is
created (part of gs_malloc_init). This can result in memory being
managed by 2 different memory handlers. Fortunately the original memory
pointer was tucked in the library context structure and that can be used
instead of the parameter passed in.

There are other areas in the library context code that need to be
checked for this same problem, and a discussion about how this might be
handled better is in the works.

base/gslibctx.c


2015-08-27 08:18:06 -0600
Henry Stiles <henry.stiles@artifex.com>
57b90f1c71fc4ae03051917fe912c3917702ba91

Fix PCL crash if no device argument is specified.

The previous change (0eac574ee24) to have PCL use the graphics library
default device list did not account for a missing device on the command
line. The change intended to remove the check for an index < 0 at the
beginning of the pl_top_create_device() procedure.

pcl/pl/plmain.c


2015-08-27 13:28:35 +0100
Ken Sharp <ken.sharp@artifex.com>
7f17c1ddae39841ef1b2bbef84cc3c95cf2e1685

pdfwrite - improved SMask handling

This follows on from commit 1a319a9, in that commit we included the soft mask
ID in the graphics state we were tracking (in fact it was present in the
structure, but untracked). This did resolve the problem adequately, but left
us emitting graphics states with /SMask /None entries in order to remove
some kinds of SMask.

A neater solution, implemented here, is to use gsave and grestore instead.

Thia is committed separately as it marks a significant change in the way
pdfwrite works. Previously only clips were handled by using gsave and grestore
and I'm slightly concerned that this may not work completely seamlessly
with this change.

This exhibits some slight halftoning differences with Altona_Technical_v20_x4.pdf
and Bug692368.pdf, and some invisible to the naked eye differences in
Bug690534.pdf, Bug694290.pdf 1439_color_softmask_filas_to_draw_jpx_image.pdf

Progressions are seen in 586_-_missing_images_gs_SMask_not_applied.pdf
multiply_luminosity_masks_ignored.pdf and x_-_renders_slowly.pdf

devices/vector/gdevpdfd.c
devices/vector/gdevpdfg.c
devices/vector/gdevpdfi.c
devices/vector/gdevpdft.c
devices/vector/gdevpdfx.h
devices/vector/gdevpdtt.c


2015-08-27 11:44:48 +0100
Ken Sharp <ken.sharp@artifex.com>
1a319a93c147eb14a0791d837bb7f1c5dfd81a3c

pdfwrite - track soft mask IDs in our saved graphcs states

Bug #695250 "Missing text from pdfwrite"

The problem was that we were not tracking soft mask IDs in our saved copies
of the graphics state, which meant that we were not properly adding (or
removing) when creating ExtGStates in pdf_update_alpha().

This addresses the specific issue in the bug, as well as showing progressions
in the test file x_-_renders_slowly.pdf (missing Qt logo now appears)

However, a more ambitious treatment, which better tracks gsave/grestore by
actually emitting q/Q operations seems to show still further improvement.
I'm going to add this as a separate commit as, despite the progressions,
I'm a little unsure about it.

devices/vector/gdevpdfg.c


2015-08-25 22:45:23 -0700
Michael Vrhel <michael.vrhel@artifex.com>
11c1290bab401e84785c731bd8a931bb3bc66c44

Fix mixup in what is the plane raster vs the row raster in gproof device_procs

The icc code had several issues as we converted the chunks of 256 planer lines
of data. The various paths tested out correctly with gsview on windows after
these fixes.

devices/gdevgprf.c


2015-08-26 07:54:05 +0100
Chris Liddell <chris.liddell@artifex.com>
69b0e7d39eae1b2a20738258dec0efcd1b38a271

Include romfs in the static lib build

No cluster differences.

base/unixlink.mak


2015-08-25 09:28:49 +0100
Chris Liddell <chris.liddell@artifex.com>
7459309630cf63fd791bfd1a79e2f3ac47d92b70

Fix the gs static library target

The recent build reorganisation broke the gs.a target, meaning an incomplete
set of object files were included in the library file.

No cluster differences

base/gs.mak


2015-08-24 17:38:15 +0100
Chris Liddell <chris.liddell@artifex.com>
8fcea1fef23c45a81ad5d13a5e3afd5662e0efef

Bug 696126 (2): PCL/XPS should (sort of) ignore COMPILE_INITS (for now)

As the PCL and XPS exes *must* have the icc profiles available in a romfs, they
will paretially ignore the COMPILE_INITS setting, and always use a rom file
system for the ICC profiles. COMPILE_INITS=0 will cause PCL to not include
it's fonts in the romfs.

This means always including the romfs I/O code in the graphics library, then
building an empty romfs into Ghostscript for COMPILE_INITS=0, and the romfs i/o
will now return gs_error_unregistered from its file_status method if
the empty romfs is found (identified by gs_romfs_buildtime being zero).

No cluster differences.

base/gs.mak
base/gsiorom.c
base/gsromfs0.c
base/lib.mak
psi/imain.c
psi/imainarg.c


2015-08-24 15:33:39 +0100
Chris Liddell <chris.liddell@artifex.com>
a32ece5ee924a6a4a581f7e6dd298f9d9af6d475

Bug 696126: tweak error checking for graphics state creation

We need to check and handle a failure to create a graphics state before trying
to initialise the ICC profile handling to prevent a crash

No cluster differences

pcl/pcl/pctop.c


2015-08-05 09:19:28 +0100
Chris Liddell <chris.liddell@artifex.com>
67aad48044024b9c198c72304971055a288322d9

Latest fonts with updated cyrillic and greek glyphs

Resource/Font/BookmanURW-DemBol
Resource/Font/BookmanURW-DemBolIta
Resource/Font/BookmanURW-Lig
Resource/Font/BookmanURW-LigIta
Resource/Font/CenturySchL-Bold
Resource/Font/CenturySchL-BoldItal
Resource/Font/CenturySchL-Ital
Resource/Font/CenturySchL-Roma
Resource/Font/CenturySchURW-Bol
Resource/Font/CenturySchURW-BolIta
Resource/Font/CenturySchURW-Ita
Resource/Font/CenturySchURW-Rom
Resource/Font/ChanceryURW-MedIta
Resource/Font/NimbusMono-Bold
Resource/Font/NimbusMono-BoldOblique
Resource/Font/NimbusMono-Oblique
Resource/Font/NimbusMono-Regular
Resource/Font/NimbusRomNo9L-Med
Resource/Font/NimbusRomNo9L-MedIta
Resource/Font/NimbusRomNo9L-Reg
Resource/Font/NimbusRomNo9L-RegIta
Resource/Font/NimbusSanL-Bol
Resource/Font/NimbusSanL-BolIta
Resource/Font/NimbusSanL-BoldCond
Resource/Font/NimbusSanL-BoldCondItal
Resource/Font/NimbusSanL-Reg
Resource/Font/NimbusSanL-RegIta
Resource/Font/NimbusSanL-ReguCond
Resource/Font/NimbusSanL-ReguCondItal
Resource/Font/NimbusSanNar-Bol
Resource/Font/NimbusSanNar-BolIta
Resource/Font/NimbusSanNar-Ita
Resource/Font/NimbusSanNar-Reg
Resource/Font/PalladioURW-Bol
Resource/Font/PalladioURW-BolIta
Resource/Font/PalladioURW-Ita
Resource/Font/PalladioURW-Rom
Resource/Font/URWBookmanL-DemiBold
Resource/Font/URWBookmanL-DemiBoldItal
Resource/Font/URWBookmanL-Ligh
Resource/Font/URWBookmanL-LighItal
Resource/Font/URWChanceryL-MediItal
Resource/Font/URWGothic-Boo
Resource/Font/URWGothic-BooObl
Resource/Font/URWGothic-Dem
Resource/Font/URWGothic-DemObl
Resource/Font/URWGothicL-Book
Resource/Font/URWGothicL-BookObli
Resource/Font/URWGothicL-Demi
Resource/Font/URWGothicL-DemiObli
Resource/Font/URWPalladioL-Bold
Resource/Font/URWPalladioL-BoldItal
Resource/Font/URWPalladioL-Ital
Resource/Font/URWPalladioL-Roma
Resource/Init/Fontmap.GS
psi/psromfs.mak


2015-08-21 09:12:16 +0100
Chris Liddell <chris.liddell@artifex.com>
4084d87a0ff7c66ecf0b9ece65f9cd9da496c15b

Bug 696161: ensure we have a show enumerator object

before using it as such - it is possible (via an invalid configuration) to get
a text enumerator, and treating that as a show enumerator can cause a crash.

Similarly, ensure we have a graphics state (and not just an imager state).

Found and fix suggested by Ken.

No cluster differences.

base/gxchar.c


2015-08-21 18:01:46 +0100
Robin Watts <robin.watts@artifex.com>
849891b1577e3caab4c73f0bfa5c27a7308e1ffc

GProof: Component names from devn_params are not null terminated.

Use the given length, not strlen.

devices/gdevgprf.c


2015-08-20 11:00:39 +0100
Ken Sharp <ken.sharp@artifex.com>
a45d3714ad03c67cee37d6ec29a8eda0fc2e937f

vector devices - prevent the use of Graphics and TextAlphaBits

The GraphicsAlphaBits and TextAlphaBits parameters don't make sense and don't
work with the vector devices, with the exception of rendering transparency.
In addition they can potentially cause seg faults and other errors.

Although we've always had code to detect the use of this at rendering
time, this hasn't stopped people from pointlessly using them.

To prevent such foolishness (at the expense of transparency flattening, which
is a very minor usage) this commit prints a warning and throws an error on
attempts to use these switches with vector devices.

Additionally update the documentation to make it clear that this is not
permitted.

base/gdevvec.c
devices/vector/gdevpsdu.c
doc/Devices.htm
doc/Language.htm
doc/Use.htm


2015-07-21 18:12:46 +0100
Robin Watts <robin.watts@artifex.com>
55af534b9d621d7ae8a2d6818369dc468514841b

Add gprf device to Windows builds.

psi/msvc.mak


2015-08-19 15:34:54 +0100
Ken Sharp <ken.sharp@artifex.com>
af72527ff3b08ff91230a0884ce601b949735cf6

pdfwrite - consider both X and Y axes when deciding on downsampling

Bug #696152 "gs no more rendering figure inside the frame"

The decision on downsampling is taken by comparing the image resolution
against the downsampling threshold. Previously we only considered the
resolution in the X direction, assuming (not entirely unreasonably) that
the image would be of similar resolution in each direction.

However in this case the image is massively scaled (and therefore has a
practical very high resolution) in the X direction, but is barely scaled
at all in the Y direction.

Downsampling this image caused the height of the image to be reduced to 1
whcih effectively caused it to disappear.

No differences expected.

devices/vector/gdevpsdi.c


2015-08-19 14:20:27 +0100
Ken Sharp <ken.sharp@artifex.com>
ac4b3ca63dbb4f51aaae6d6e927672ebde207326

pdfwrite - fix an 'unescape' for \b

Bug #696147 "\b is converted into 007 in devices/vector/gdevpdfm.c"

Picked up, and fix provided, by popjussi (at gmail.com)

The code is pretty clearly an 'off by 1' error when converting the
escaped character code into an octal number.

No differences expected

devices/vector/gdevpdfm.c


2015-08-18 14:27:49 +0100
Chris Liddell <chris.liddell@artifex.com>
0eac574ee24b9567743906721039fa0279ab3175

Use default device list for PCL/XPS

Previously, the PCL and XPS executables would simply default to the first
device in the graphics library's device list, and ignore the actual compile
time set default device list.

It now uses the graphics library's default device list, bringing it inline
with Ghostscript.

No cluster differences.

pcl/pl/plmain.c


2015-08-18 16:07:53 +0100
Chris Liddell <chris.liddell@artifex.com>
021277d531aa5ba13cfcbfde5bc1a6012db54fd7

Bug 696150: make allocator available to init jpeg state in gdevpx.c

When I changed the JPEG state API, it seems I missed one of the instances
of its use - now fixed.

Identified by Dmitry Pankratov.

No cluster differences.

devices/vector/gdevpx.c


2015-08-18 15:44:16 +0100
Chris Liddell <chris.liddell@artifex.com>
d552e3ba3ed5a3e43062ee5bb1778787bff829ff

Add a target to build only the unix shared lib

The "so-only" target will build the .so shared library, and the associated
sym links, but not the "loader" executables.

This is useful for building/cross compiling the .so when you haven't got
the dependencies available for the executables (x11, gtk etc).

No cluster differences

base/unix-dll.mak


2015-08-18 13:47:04 +0100
Chris Liddell <chris.liddell@artifex.com>
9238bb855cae9ac53b6cf2b95e3b070f3de69a38

Recursive make calls use -f "makefile name" option

The recursive make calls previously relied
on the makefile being the default name "Makefile" - by passing the name of
the makefile to the sub-call, we can use custom makefile names.

Currently only works for GNU make (detected in configure).

For this to work, if you rename the makefile, you must also edit the name in
the "MAKEFILE" variable to match your custom makefile name.

No cluster differences.

Makefile.in
base/unix-dll.mak
base/unix-end.mak
configure.ac


2015-08-18 14:33:59 +0100
Chris Liddell <chris.liddell@artifex.com>
0e30e7c64f4001adfa5fe376e4cd9ab184903b55

Bug 696149: tweak under/overflow prevention in FAPI/UFST

Due to limits of the fixed point arithmetic in the UFST, we have to balance
various scale factors at extreme scales (scale matrix, font size, "resolution")
to ensure varaibles don't over/under flow.

It looks like there was a typo, or just a mistake in how two of the factors
were being scaled relative each other which could cause *extremely* small
scale factors to end up as *extremely* large scale factors.

No cluster differences.

base/fapiufst.c


2015-08-17 11:38:42 +0100
Chris Liddell <chris.liddell@artifex.com>
e607d6afe7afde57f5f2218f5a7ec267a95a45e4

Split fonts files out from romfs args

Have each interpreter specify it's font files separately from any other
resources for inclusion in the romfs. That means when integrating the UFST
into the build, we can automatically leave out the font files, whilst including
the FCO files.

No cluster differences.

base/lib.mak
pcl/pl/plromfs.mak
psi/psromfs.mak
xps/xpsromfs.mak


2015-08-18 19:51:16 +0100
Robin Watts <robin.watts@artifex.com>
fc9afb317f3f3e1af5c74fcf381af50a28328acd

GProof: Trade performance for compression.

Use Z_BEST_SPEED rather than Z_BEST_COMPRESSION when saving the
raster data.

devices/gdevgprf.c


2015-08-18 12:42:43 +0100
Robin Watts <robin.watts@artifex.com>
98b136b5343998849d983e9c508e6f6047cdec64

GProof device: Fix no-icc rgb generation.

Derefence pointers to get colour values, rather than using the
pointers themselves as colour values.

devices/gdevgprf.c


2015-08-17 08:20:39 +0100
Ken Sharp <ken.sharp@artifex.com>
828b99f459b17f8537eae96694d745409a577469

PDF interpreter - Attempt to validate the ICCBased /N value for color spaces

Bug #696120 "Invalid PDF to TIFF conversion"

The supplied specimen file is incorrect, it has an ICCBased colour space
which contains the /N key (number of channels) set to a value of 3, but
the actual profile is a gray profile, and therefore /N should be 1.

Here we add a new function .numicc_components which attempts to find the
number of components from an ICC profile (returns 0 if it can't determine
the value). We then use that returned value to compare to the actual
/N value given. If the two don't match, and the calculated value is non-zero
then we use the calculated value instead, and alter the value of /N.

One file in the cluster test suite is shown as different, but it is visually
the same.

In passing, remove some unused variables and commented out code from zicc.c
to silence some compiler warnings.

Resource/Init/pdf_draw.ps
psi/zicc.c


2015-08-14 12:18:14 -0600
Henry Stiles <henry.stiles@artifex.com>
6ebd1b211bda59c5d2a70c423f3539a8e11d1bce

Bug 696092 - fix memory leak in the X driver.

Thanks to Hin-Tak Leung for providing a patch to cleanup when the X
device closes.

devices/gdevxini.c


2015-08-14 17:48:11 +0100
Robin Watts <robin.watts@artifex.com>
c50adbe72f3e8a07c96127a4df9d78b422acf22a

MSVC Solution: Adjust output location.

Output location had not been adjusted to allow for the projects
being moved to a subdirectory.

windows/All.vcproj
windows/ghostscript-ufst.vcproj
windows/ghostscript.vcproj


2015-05-25 12:35:14 -0700
Ray Johnston <ray.johnston@artifex.com>
695065f2183049bafb8c468f1bc54996da7698dd

Fix bug 695929. gx_ht_construct_threshold t_level calculation was wrong.

Rewrite the threshold construction method. For num_levels < 256 the
previous "t_level_adjust", etc. were never invoked, but the logic for
the adjustment was incorrect (only worked for num_levels == 256).
This algorithm uses the same method for determining 'shade' as the
logic in gx_render_device_DeviceN which is used prior to setting up
the HT tile in the non-fast threshold code.

The 'off' is eliminated since that caused threshold values that do not
match the HT tiling code, and the init_value and threshold values now
match those generated by the HT tiling code for num_levels < 256.
Tested with 300 dpi and DITHERPPI values of 18, 24, 30, 33, 39, 52,
and 60 (the default).

Also the size of images with the fast code was wrong (dest_width)
and the phase of the pixels did not match the image code (dda_init).
This also re-enables the fast code disabled with an earlier commit.
This was tested with tests/pdf/GridDownscaleTest0.pdf, modified to
test all rotations, and at 72, 300 and 1200 dpi.

The transfer function is now pickled into the threshold array levels.
Although this causes some minor shade differences since the normal
cmap function calculates the shade from a frac (0-32760) and the
threshold has to select the shade from a byte value (0-255). The
09-47N.PS test shows this.

Also the texture screen_phase is used to adjust the thresholds when
filling the threshold buffer.

This collection of changes fixes the customer bug, also seen with
12-07B.PS and reduces the number of differences to the non-fast HT
code from 3931 to 1026. The 12-07B.PS still shows a screen angle
issue (page 3) that occurs when num_repeat > 0, but changing the logic
results in a marked increase in the number of differences. Also, xl
tests show some phase shift in Y that remains unexplained.

All other diffs appear to be transfer function related

fixup

base/gsht.c
base/gxdht.h
base/gxht_thresh.c
base/gxht_thresh.h
base/gxicolor.c
base/gximono.c
base/gzht.h


2015-08-14 15:13:27 +0100
Chris Liddell <chris.liddell@artifex.com>
6a90174e403131c372acf19e1d63e5d202333503

Validate SMask object before evaluating it.

and if it's not valid, replace the object with /None

Relates to test file:
tests_private/pdf/sumatra/broken_xobject_messing_up_clip_stack.pdf

No cluster differences

Resource/Init/pdf_draw.ps


2015-08-10 12:57:03 +0100
Chris Liddell <chris.liddell@artifex.com>
819e651a61d16c636821b3281a3cc70ec434dbb7

Ensure imager state is not marked as graphics state

In various places in the pdf14 compositor device, we use local copies of the
imager state (so stuff specific to the pdf14 compositor functions doesn't
accidentally affect the "upstream" state).

This ensures that those copies are not marked as being a graphics state, in case
the imager state started life as a full graphics state.

No cluster differences.

base/gdevp14.c


2015-08-10 09:34:48 +0100
Chris Liddell <chris.liddell@artifex.com>
91e952779b18b3db612c96d898cd3c6f6c433ca7

Bug 696127: add missing tiffscaled* devs to configure build

The tiffscaled4, tiffscaled8, tiffscaled24 and tiffscaled32 were missed from
the default list of TIFF devices in the configure based builds.

No cluster differences.

configure.ac


2015-08-14 07:24:48 -0600
Henry Stiles <henry.stiles@artifex.com>
7b6538e2fac9dd4e7e423c4f974fcdd235626484

Fix bug #694673, segmentation fault caused by "fuzzing" test.

Deleting the current font resulted in later dereferencing an invalid
pointer to the font. We now set the current font to "NULL". This
problem should not have required a fuzzing test to find it should have
been realized by the original CET 3.0 test.

pcl/pxl/pxfont.c


2015-08-11 14:57:06 -0600
Henry Stiles <henry.stiles@artifex.com>
20d5f3dcf93022f843a8bba1e17594b768c85306

Fix for bug 696124, character scaling with a singular matrix.

By experiment HP does not ignore requests for font height which are out
of range, instead it clamps the values to the limits of the range. The
minimum is .25 points. The cet files in these bugs are requesting a
font size of 0 and the HP laserjet does render a very small character
which is visible but only readable with magnification assuming normal
vision.

This change just allows the matrix to be scaled to the minimum value
allowing the test files in the bug to continue processing, these tiny
characters do not render properly even with this change. The rounding of
escapement would have to be worked in PCL and likely the font rasterizer
would need to be looked at, the characters do not appear correct even
with proper spacing.

There is no practical demand to do this correctly, so we don't plan to
work on it anytime soon.

pcl/pcl/pcfont.c


2015-08-07 14:58:57 +0100
Ken Sharp <ken.sharp@artifex.com>
6ebbe34a5a5ae65a513f50970854032625d5a8db

Coverity ID #102065 prevent a potential NULL pointer derefernce

base/gdevsclass.c


2015-08-06 11:23:00 +0100
Ken Sharp <ken.sharp@artifex.com>
b22c02829e476a07a8c7fb93f919b2ea797a8791

Commit 6fb23cff7abcef91d03b43454d2d40d79c5e83da was actually incorrect.

The Coverity report is a false positive, and the change causes a seg fault, fixed here.

At the same time fix another fualt that prevented the cluster building
Ghostscript.

devices/vector/gdevpdti.c
devices/vector/gdevpdtt.c


2015-08-06 10:42:35 +0100
Ken Sharp <ken.sharp@artifex.com>
108ed487b6c24554b00e36f3b716fd37e427bd09

Coverity ID #94769 restore saved FontMatrix on error

devices/vector/gdevpdtt.c


2015-08-06 10:39:53 +0100
Ken Sharp <ken.sharp@artifex.com>
ae73639179ec10c29d902f7e802e769bca70fd06

Coverity ID #94641 remove dead code

devices/vector/gdevpdtt.c


2015-07-30 17:27:23 +0100
Chris Liddell <chris.liddell@artifex.com>
1fae53a708fca6c2ac0417bc23f5d095cc379250

Bug 696101: fix uses of the sfopen API.

The stream API in GS is defined as *always* opening files in binary mode,
where applicable, so there is no need for the API clients to specify binary
mode.

This is previously been benign, and thus ignored, but reportedly ending up with
a duplicate 'b' character in the mode causes a crash on Windows 10.

No cluster differences.

base/fapiufst.c
base/gsicc_manage.c
base/lib.mak
base/sfxcommon.c
base/strmio.h
devices/vector/gdevpdfu.c
pcl/pl/pllfont.c
psi/zfile.c


2015-08-06 09:20:59 +0100
Ken Sharp <ken.sharp@artifex.com>
6fb23cff7abcef91d03b43454d2d40d79c5e83da

Coverity ID #95037. Fix what looks like a simple oversight

devices/vector/gdevpdti.c


2015-08-06 09:16:56 +0100
Ken Sharp <ken.sharp@artifex.com>
c2adcc65d5e56e008b082675bc3883edb92f57a4

Coverity ID #94925 alter '>' to '>=' to avoid potential overrun

devices/vector/gdevpdti.c


2015-08-06 09:05:53 +0100
Ken Sharp <ken.sharp@artifex.com>
eb2204d269bb5577170ad28fc837704c8f865dba

Coverity ID #94859 avoid potential NULL pointer dereference

devices/vector/gdevpdtd.c


2015-08-06 08:51:21 +0100
Ken Sharp <ken.sharp@artifex.com>
56d3dfcbb53294e980e3a0169c2e676143eb66e7

Coverity ID #101184 prevent a potential NULL pointer dereference

devices/vector/gdevpdfv.c


2015-08-06 08:25:54 +0100
Ken Sharp <ken.sharp@artifex.com>
38635d15c08f5359632bf3ed6162ed125ce204c0

Coverity ID #94860 remove dead code

devices/vector/gdevpdfp.c


2015-08-05 15:15:17 +0100
Ken Sharp <ken.sharp@artifex.com>
b71c1d775b1ca343a7cd80fc842f6681d2fd4037

Coverity ID #101186 Remove some unused code to silence warnigns

devices/vector/gdevpdfo.c


2015-08-05 14:50:15 +0100
Ken Sharp <ken.sharp@artifex.com>
2964fc6908aa86a9a7b2964b6c1e8d70459641b0

Coverity ID #95040 check a return code

devices/vector/gdevpdte.c


2015-08-04 16:02:37 +0100
Ken Sharp <ken.sharp@artifex.com>
6fc5e5a406e6dae25233719a8c6cc1442c774695

pdfwrite - fix some sorting problems in Names trees

Bug #696030 "main level of bookmarks not being set as destination"

The new code to write the Names tree as a tree had some logical flaws when
ordering the keys which led to some entries not being written.

devices/vector/gdevpdfo.c


2015-08-04 08:55:11 +0100
Ken Sharp <ken.sharp@artifex.com>
b56ff42047f6df6e7c74a79b91cd7d193bfa7357

pdfwrite - improved clips under rare conditions

Bug #696093 "Distortion converting PS to PDF"

The test file exposes a rare condition in the graphics library and the
pdfwrite device.

The example is carelessly constructed by the designer; a blue rectangle
has an image laid over the top of it, the image is required to be at a
particular position in order to align the text in the image with other
parts of the text, in other images. This causes part of the image to
obscure the underlying blue rectangle.

A simple way to resolve this would be to change the z-order so that the
rectangle lies on top of the image, or to apply a clip to the image to
stop it overlapping. Instead the designer has created a new image, the
same colour as the blue rectangle, and placed that on top of the image
containing the text. This image has been clipped to a very small area. In
addition the applied clip is not quite rectangular.

The effect of this is that two clipping paths intersect, when this happens
the graphics library calculates the intersection as a series of rectangles.
Because the final clip is very small and very nearly rectangular, at the
resolution used by pdfwrite the intersection (at pixel level) *is* a
rectangle.

So the code wrote the final clip as a rectangle. This works fine at specific
resolutions, but at other resolutions (ie other zoom levels in Acrobat)
the lack of precision caused the clip to go slightly awry, allowing the
clipped image to get bigger and overlap portions of the image containing the
text.

The first part of the fix is in pdfwrite. We check the 'path_valid' member
of the clip path structure. This is set if the clip is set due to a single
path, if its the intersection of two paths, then path_valid is reset.

We only write a simple rectangle if the clip path is a rectangle *and* the
rectangle is the result of a single path.

Otherwise, we use the path_list. This is a list of all the paths that were
used to create this clip. By writing the paths out we recover the accuracy.

There is, however, a second part to this. Initclip, and a few other operations
can set the clip to a rectangular area, *without* setting a path. This
results in path_valid being false *and* not having a path_list. In this case
the pdfwrite code just writes the rectangle.

There is one further wrinkle; If we had an existing clip which was overridden
with a rectangle by one of these operators, the graphics library did not
clear the path_list member of the clip path. This meant that the path_list
referred to the paths which created a totally different clip to the one
actually being applied. For rendering this isn't a problem, but for the
pdfwrite device it caused us to write a completely incorrect set of paths.

There are a number of cluster differences, mostly at low resolution
(because the resolution matters):

minor (single pixel changes)
-----------------------------
Bug689189.pdf
Bug689748.pdf
Bug690395.pdf
Bug691115.pdf
Bug694871.eps
Bug695863.pdf
pcl5ccet/32_02.bin
catx4547.pdf
catx6508.pdf
x_-_text_clipped_away_above_141_pc.pdf
09-34.ps
10-01.ps

minor changes
--------------------
pcl6cet3.0/c303.bin
pcl6cet3.0/c304.bin
pcl6cet3.0/c308.bin
pcl6cet3.0/c309.bin
pcl6cet3.0/c310.bin
pcl6cet3.0/c311.bin
pcl6cet3.0/c312.bin
pcl6cet3.0/c314.bin
pcl6cet3.0/c315.bin
pcl6cet3.0/c316.bin
pcl6cet3.0/c317.bin
pcl6cet3.0/c318.bin
pcl6cet3.0/c319.bin
pcl6cet3.0/c321.bin
pcl6cet3.0/c331.bin
pcl6cet3.0/c332.bin
pcl6cet3.0/c333.bin
pcl6cet3.0/c335.bin
pcl6cet3.0/c401.bin
pcl6cet3.0/c403.bin
pcl6cet3.0/c404.bin
pcl6cet3.0/c405.bin
pcl6cet3.0/c406.bin
pcl6cet3.0/c407.bin
pcl6cet3.0/c408.bin
pcl6cet3.0/c409.bin
pcl6cet3.0/c410.bin
pcl6cet3.0/c411.bin
pcl6cet3.0/c412.bin
pcl6cet3.0/c413.bin
pcl6cet3.0/c414.bin
pcl6cet3.0/c415.bin
pcl6cet3.0/c416.bin
pcl6cet3.0/c417.bin
pcl6cet3.0/c418.bin
pcl6cet3.0/c420.bin
pcl6cet3.0/c422.bin
pcl6cet3.0/c424.bin
pcl6cet3.0/c425.bin
pcl6cet3.0/c426.bin

minor (single pixel changes), probably progressions
----------------------------------------------------
09_47N.pdf
26_09.pdf
09-34.ps
10-01.ps
10-08.ps
10-13.ps
10-14.ps
10-16.ps
13-16.ps
13-17.ps
13-19.ps

small but useful progressions
Bug692720.pdf
Bug694909.pdf
x_-_text_clipped_away_above_141_pc.pdf

significant progressions
-------------------------
pcl6cet3.0/c325.bin
xpsfts-a4/fts_34xx.xps
xpsfts-a4/fts_42xx.xps
xpsfts-a4/fts_45xx.xps

just different (wrong both ways)
--------------------------------
pcl6cet3.0/c421.bin
pcl6cet3.0/c422.bin

base/gspath.c
devices/vector/gdevpdfd.c


2015-07-31 14:59:27 +0100
Ken Sharp <ken.sharp@artifex.com>
83e211723f975beff6ce488a2a6ee5105c089121

Force the normal text handling to throw errors under the same (degenerate
CTM) conditions as when -dTextAlphaBits is set.

Currently if the CTM is something like [0 0 0 0 Tx Ty] then Ghostscript
throws an error if -dTextAlphaBits is set, but not if it isn't. This leads
to a number of bug reports citing problems with TextAlphaBits which really
isn't the case.

Testing Adobe seems to indicate that, for PostScript, and error is the
expected behaviour.

This commit adds a 'currentpoint' call in two places so that we get the same
error no matter which code path we follow.

The PDF interpreter has already been fixed so that all known cases will not
throw errors with this commit, but two PCL files from Quality Logic do now
throw an error, 18-08.bin and 18-09.bin. A bug report will be raised for
these.

base/gxfapi.c


2015-07-31 11:05:12 +0100
Ken Sharp <ken.sharp@artifex.com>
70b442162ff8f3d40595d0eb9fb365d341139ee2

PDF interpreter - detect and 'fix' degenerate text matrices

Cluster test files Bug689006.pdf, Bug690179.pdf and Bug694981.pdf all end
up setting a degenerate text matrix (horizontal or vertical scale of 0)
albeit in different ways.

This commit detects these cases, and fixes the matrix by changing to a
tiny scale factor, instead of 0.

These files now work with -dTextAlphaBits=4, which they did not before. In
addition there are several progressions exhibited.

Bug694981.pdf now works with the psdcmyk device.
singular_ctm_3_tr_mode.pdf and Bug689614.pdf with the ps2write device no
longer produce PostScript files which error out on execution.

Resource/Init/pdf_ops.ps


2015-07-29 08:57:01 +0100
Ken Sharp <ken.sharp@artifex.com>
b2f3441d5481e9629130b989d5ad14841f22ce98

PDF interpreter - clamp horizontal text spacing to prevent degenerate CTM

Bug #696107 "Text missing with -dTextAlphaBits=4"

The file contains three occurrences of "0 Tz" which sets the horizontal
scale factor to 0. This causes the CTM to have a zero horizontal scale
which (correctly) throws an error when TextAlphaBits is set.

This commit detects setting Tz to 0 and replaces it with a miniscule, but
non-zero, value thus preventing the degenerate matrix and the error.

A later commit will change the behaviour of the graphics library so that it
is at least consistent with differing values for TextAlphaBits.

Resource/Init/pdf_ops.ps


2015-07-30 12:09:53 -0700
Michael Vrhel <michael.vrhel@artifex.com>
47622dec684584b38571516b844e007cda7853c8

Initial commit for color management in gproof device.

There are four possible cases that had to be handled.
They depend upon if we have or do not have non standard colorants
and if we have or do not have the proper ICC profiles

Essentially we may have to compute the equivalent CMYK colors
for the image that includes spot colors and we may have to do
a very slow conversion to RGB when we don't have the proper
ICC profiles. The fastest case, occurs when we have an ICC
for all our source colorants (including any spots).

devices/gdevgprf.c


2015-07-29 07:17:58 -0700
Ray Johnston <ray.johnston@artifex.com>
ab674af32798e8b7ce46bb093acfe756d226cdf6

Fixes for Windows build with VS 2015.

Apparently snprintf is now available (since VS2014), and we need to
make sure and undef bool to avoid conflicts.

base/gp_mswin.c
base/stdio_.h
base/windows_.h
jbig2dec/config_win32.h
tiff/libtiff/tif_config.vc.h


2015-07-30 07:22:34 -0700
Ray Johnston <ray.johnston@artifex.com>
56045937000ea510c40347bc921a287624ea502d

Add /PROFILE linker switch for gpcl, gxps profile builds on Windows

base/msvccmd.mak


2015-07-29 11:51:56 -0700
Michael Vrhel <michael.vrhel@artifex.com>
be5f5ebf5c30219671d762c0423f83c86de93e62

Make the lcms temp memory allocations use memory from the device

With recent changes a link may not have a valid link cache entry and
previously were using memory from the link cache entry for temporary
memory allocations.

base/gsicc_lcms2.c
base/lib.mak


2015-07-27 12:17:13 -0700
Michael Vrhel <michael.vrhel@artifex.com>
7a6eafb5cbe23d7618bec87b3a904c9bb116150a

Move a tiffsep method and struct to the common devn device so it can be used by others

The gproof device needs to do some of the same things as the tiffsep device when
the ICC profile is not sufficient to map the colorants.

base/gdevdevn.c
base/gdevdevn.h
devices/gdevtsep.c


2015-07-25 17:53:34 +0100
Chris Liddell <chris.liddell@artifex.com>
e32fe0b1e0cebc58fa9d413d2c6541d26a238d04

Bug 696114: fix disable compile inits build

Fix mistakes for the non-compile inits build.

For that case, we make a single empty romfs source file, which then gets built
into different object files, one for each product. When I made those changes
I got the source and object file names the wrong way round.

base/lib.mak


2015-07-24 11:43:27 -0700
Michael Vrhel <michael.vrhel@artifex.com>
0eee21b097b505e24915b9c535ce166f92a397b6

Create equivalent RGB colors from CMYK equivalent colors

The ICC profiles are used if they are valid. If not, the old
canned routines for doing the conversions are used. Note that
the icc link was added to the context.

devices/gdevgprf.c


2015-07-23 13:23:38 -0700
Michael Vrhel <michael.vrhel@artifex.com>
6e470ae65e274d9671df1bfc72007203c3158855

Set up for color management in gproof device

Here we remove code that is not needed as well as create the
link between the source and the destination profiles and
release it when the device is closed. Next step will be to apply
the profile to the data.

devices/gdevgprf.c


2015-07-23 12:59:17 -0700
Michael Vrhel <michael.vrhel@artifex.com>
547f44324971c716ae3ee4d7a2cb0b48e011f0b4

Clean up a few items in the device based link allocation.

Had to add a way to free the link, make sure the allocation is done in non-gc memory
and initialize a few more items.

base/gsicc_cache.c
base/gsicc_cache.h


2015-07-23 11:19:46 -0700
Michael Vrhel <michael.vrhel@artifex.com>
a6ee000ceb76fe7da46aaa89ff5c5f7c304775a3

Add support in ICC code for the creation of links that are not in the cache

This is needed for use by device that are doing post rendering color management.
In this case, they do not have access to the imager state and the icc cache. They
typically only need one link which will be applied to the rendered data.

base/gsicc_cache.c
base/gsicc_cache.h


2015-07-22 15:28:48 -0700
Michael Vrhel <michael.vrhel@artifex.com>
3f492a9920f9d4cd30e6229c5b0b56bf1b7ade28

Remove jasper and lcms (vers 1) references from ghostscript.vcproj

windows/ghostscript.vcproj


2015-07-22 12:18:00 -0700
Michael Vrhel <michael.vrhel@artifex.com>
317b83e6f31f91a2a8c957df46f7d9b922290110

Fix paths for files in visual studio project.

windows/ghostscript.vcproj


2015-07-22 14:49:57 +0100
Chris Liddell <chris.liddell@artifex.com>
2c02e58e490f3488e506873018ad04f2565a82c9

Remove the Postscript based CFF interpreter.

The C CFF implementation has been the default for quite some time, and it is
several years since we had the one problem reported on it, so it seems fitting
to remove it as redundant, and it's supporting data.

No cluster differences.

Resource/Init/gs_cff.ps
Resource/Init/gs_css_e.ps
psi/int.mak
psi/psromfs.mak


2015-07-22 18:05:56 +0100
Chris Liddell <chris.liddell@artifex.com>
b0fd01a31fc4f74a1afab5f915bfccc6864d0235

Remove a FIXME comment.....

Makefile.in


2015-07-21 08:30:10 -0700
Michael Vrhel <michael.vrhel@artifex.com>
f9c3dbc6ed02b9bba2f1d54dea10acce5145da24

Add post rendering ICC profile to device params and Device ICC structure

We will initially use this for the gsproof device but it would be accessible
for any of the devices if they wish to do additional color managed processing
for the creation of some special proofing output for example

base/gscms.h
base/gsdparam.c
base/gsequivc.c
base/gsicc_manage.c


2015-07-20 21:52:22 -0700
Michael Vrhel <michael.vrhel@artifex.com>
ba2eea6610e997ecd3735ee95d0325e59ae45006

Fix typo in gx_default_get_param for TextICCProfile.

base/gsdparam.c


2015-07-10 17:26:45 +0100
Robin Watts <robin.watts@artifex.com>
d94669ba0009288630bcec80a3dd725cfa7ba002

First cut at gproof device.

devices/devs.mak
devices/gdevgprf.c
windows/ghostscript.vcproj


2015-07-21 10:42:10 +0100
Robin Watts <robin.watts@artifex.com>
578025a9cc9cd682f8570004f6d873e76f1af3ef

MS solution; move to windows directory

Remove repeated files from within ghostpdl.

All.vcproj
GhostPDL.sln
ghostall.vcproj
ghostpcl.vcproj
ghostpdl.vcproj
ghostscript-ufst.vcproj
ghostscript.vcproj
ghostscript_rt.vcxproj
ghostxps.vcproj
windows/All.vcproj
windows/GhostPDL.sln
windows/ghostpcl.vcproj
windows/ghostpdl.vcproj
windows/ghostscript-ufst.vcproj
windows/ghostscript.vcproj
windows/ghostscript_rt.vcxproj
windows/ghostxps.vcproj


2015-07-21 14:12:07 +0100
Chris Liddell <chris.liddell@artifex.com>
d9eff8f0120d772189bf54fb5de6f7d0b061e7b3

Fix a few mistakes in the Windows makefiles

base/lcupsi.mak
psi/msvc.mak


2015-07-21 11:45:02 +0100
Chris Liddell <chris.liddell@artifex.com>
15436d6ad86d5f394b5699474be82f624a289685

Add targets for memento and profile builds

for each individual executable. And update the VS projects to use them

base/unix-end.mak
ghostpcl.vcproj
ghostpdl.vcproj
ghostscript.vcproj
ghostxps.vcproj
psi/msvc.mak


2015-07-21 00:08:24 +0100
Robin Watts <robin.watts@artifex.com>
2aa05a2667836e9bb9f46a4d64ceb68f14556214

MS solution; add 'All' project.

The All project invokes some new makefile targets. These makefile
targets just depend on all the appropriate existing makefile targets.
Thus we get a sequential build of the different projects.

Nmake does not (yet) support parallelism, so we don't have the problem
of building multiple projects in parallel as we get when we build
multiple projects in the solution.

We use the configuration manager in the solution to ensure that when
we build the entire solution, only 'All' is built.

All.vcproj
GhostPDL.sln
ghostall.vcproj


2015-07-20 20:29:26 +0100
Robin Watts <robin.watts@artifex.com>
428c32050b287e90db4d77ff920dd37162d43c94

Tweak VS solution a bit more; avoid repeating files.

To avoid files showing up more than once when we search for them,
ensure that each file is only included once. This means that common
files are listed only under ghostscript.

This makes no difference to builds etc, as that's all handled by the
Makefiles.

ghostpcl.vcproj
ghostscript.vcproj
ghostxps.vcproj


2015-07-20 20:06:28 +0100
Robin Watts <robin.watts@artifex.com>
c676ef3689f80f9103727a40e91fcbcf52882f3f

Fix VS solution configuration issues.

It seems the solution has gotten confused, and wants to build
Release-contrib for all exes in all cases.

GhostPDL.sln


2015-07-20 21:25:10 +0100
Chris Liddell <chris.liddell@artifex.com>
4a545c49f3a22a891c60cbd0f228b1c08fe11ec4

Fix the gpcl6 and gxps targets for Windows.

psi/msvc.mak


2013-07-23 16:24:19 +0100
Chris Liddell <chris.liddell@artifex.com>
6948650efd3fb9e2a70b8cf16aca57e9d0b7eb0a

Commit of build_consolidation branch

Squashed into one commit (see branch for details of the evolution of the
branch).

This brings gpcl6 and gxps into the Ghostscript build system, and a shared
set of graphics library object files for all the interpreters.

Also, brings the same configuration options to the pcl and xps products as we
have for Ghostscript.

COPYING
COPYING.AFPL
DroidSansFallback.NOTICE
GhostPDL.sln
LICENSE
Makefile
Makefile.in
NEWS
README.txt
Resource/CIDFSubst/DroidSansFallback.ttf
Resource/CIDFont/ArtifexBullet
Resource/CMap/78-EUC-H
Resource/CMap/78-EUC-V
Resource/CMap/78-H
Resource/CMap/78-RKSJ-H
Resource/CMap/78-RKSJ-V
Resource/CMap/78-V
Resource/CMap/78ms-RKSJ-H
Resource/CMap/78ms-RKSJ-V
Resource/CMap/83pv-RKSJ-H
Resource/CMap/90ms-RKSJ-H
Resource/CMap/90ms-RKSJ-V
Resource/CMap/90msp-RKSJ-H
Resource/CMap/90msp-RKSJ-V
Resource/CMap/90pv-RKSJ-H
Resource/CMap/90pv-RKSJ-V
Resource/CMap/Add-H
Resource/CMap/Add-RKSJ-H
Resource/CMap/Add-RKSJ-V
Resource/CMap/Add-V
Resource/CMap/Adobe-CNS1-0
Resource/CMap/Adobe-CNS1-1
Resource/CMap/Adobe-CNS1-2
Resource/CMap/Adobe-CNS1-3
Resource/CMap/Adobe-CNS1-4
Resource/CMap/Adobe-CNS1-5
Resource/CMap/Adobe-CNS1-6
Resource/CMap/Adobe-GB1-0
Resource/CMap/Adobe-GB1-1
Resource/CMap/Adobe-GB1-2
Resource/CMap/Adobe-GB1-3
Resource/CMap/Adobe-GB1-4
Resource/CMap/Adobe-GB1-5
Resource/CMap/Adobe-Japan1-0
Resource/CMap/Adobe-Japan1-1
Resource/CMap/Adobe-Japan1-2
Resource/CMap/Adobe-Japan1-3
Resource/CMap/Adobe-Japan1-4
Resource/CMap/Adobe-Japan1-5
Resource/CMap/Adobe-Japan1-6
Resource/CMap/Adobe-Korea1-0
Resource/CMap/Adobe-Korea1-1
Resource/CMap/Adobe-Korea1-2
Resource/CMap/B5-H
Resource/CMap/B5-V
Resource/CMap/B5pc-H
Resource/CMap/B5pc-V
Resource/CMap/CNS-EUC-H
Resource/CMap/CNS-EUC-V
Resource/CMap/CNS1-H
Resource/CMap/CNS1-V
Resource/CMap/CNS2-H
Resource/CMap/CNS2-V
Resource/CMap/ETHK-B5-H
Resource/CMap/ETHK-B5-V
Resource/CMap/ETen-B5-H
Resource/CMap/ETen-B5-V
Resource/CMap/ETenms-B5-H
Resource/CMap/ETenms-B5-V
Resource/CMap/EUC-H
Resource/CMap/EUC-V
Resource/CMap/Ext-H
Resource/CMap/Ext-RKSJ-H
Resource/CMap/Ext-RKSJ-V
Resource/CMap/Ext-V
Resource/CMap/GB-EUC-H
Resource/CMap/GB-EUC-V
Resource/CMap/GB-H
Resource/CMap/GB-V
Resource/CMap/GBK-EUC-H
Resource/CMap/GBK-EUC-V
Resource/CMap/GBK2K-H
Resource/CMap/GBK2K-V
Resource/CMap/GBKp-EUC-H
Resource/CMap/GBKp-EUC-V
Resource/CMap/GBT-EUC-H
Resource/CMap/GBT-EUC-V
Resource/CMap/GBT-H
Resource/CMap/GBT-V
Resource/CMap/GBTpc-EUC-H
Resource/CMap/GBTpc-EUC-V
Resource/CMap/GBpc-EUC-H
Resource/CMap/GBpc-EUC-V
Resource/CMap/H
Resource/CMap/HKdla-B5-H
Resource/CMap/HKdla-B5-V
Resource/CMap/HKdlb-B5-H
Resource/CMap/HKdlb-B5-V
Resource/CMap/HKgccs-B5-H
Resource/CMap/HKgccs-B5-V
Resource/CMap/HKm314-B5-H
Resource/CMap/HKm314-B5-V
Resource/CMap/HKm471-B5-H
Resource/CMap/HKm471-B5-V
Resource/CMap/HKscs-B5-H
Resource/CMap/HKscs-B5-V
Resource/CMap/Hankaku
Resource/CMap/Hiragana
Resource/CMap/Identity-H
Resource/CMap/Identity-UTF16-H
Resource/CMap/Identity-V
Resource/CMap/KSC-EUC-H
Resource/CMap/KSC-EUC-V
Resource/CMap/KSC-H
Resource/CMap/KSC-Johab-H
Resource/CMap/KSC-Johab-V
Resource/CMap/KSC-V
Resource/CMap/KSCms-UHC-H
Resource/CMap/KSCms-UHC-HW-H
Resource/CMap/KSCms-UHC-HW-V
Resource/CMap/KSCms-UHC-V
Resource/CMap/KSCpc-EUC-H
Resource/CMap/KSCpc-EUC-V
Resource/CMap/Katakana
Resource/CMap/NWP-H
Resource/CMap/NWP-V
Resource/CMap/RKSJ-H
Resource/CMap/RKSJ-V
Resource/CMap/Roman
Resource/CMap/UniCNS-UCS2-H
Resource/CMap/UniCNS-UCS2-V
Resource/CMap/UniCNS-UTF16-H
Resource/CMap/UniCNS-UTF16-V
Resource/CMap/UniCNS-UTF32-H
Resource/CMap/UniCNS-UTF32-V
Resource/CMap/UniCNS-UTF8-H
Resource/CMap/UniCNS-UTF8-V
Resource/CMap/UniGB-UCS2-H
Resource/CMap/UniGB-UCS2-V
Resource/CMap/UniGB-UTF16-H
Resource/CMap/UniGB-UTF16-V
Resource/CMap/UniGB-UTF32-H
Resource/CMap/UniGB-UTF32-V
Resource/CMap/UniGB-UTF8-H
Resource/CMap/UniGB-UTF8-V
Resource/CMap/UniHojo-UCS2-H
Resource/CMap/UniJIS-UCS2-H
Resource/CMap/UniJIS-UCS2-HW-H
Resource/CMap/UniJIS-UCS2-HW-V
Resource/CMap/UniJIS-UCS2-V
Resource/CMap/UniJIS-UTF16-H
Resource/CMap/UniJIS-UTF16-V
Resource/CMap/UniJIS-UTF32-H
Resource/CMap/UniJIS-UTF32-V
Resource/CMap/UniJIS-UTF8-H
Resource/CMap/UniJIS-UTF8-V
Resource/CMap/UniJIS2004-UTF16-H
Resource/CMap/UniJIS2004-UTF16-V
Resource/CMap/UniJIS2004-UTF32-H
Resource/CMap/UniJIS2004-UTF32-V
Resource/CMap/UniJIS2004-UTF8-H
Resource/CMap/UniJIS2004-UTF8-V
Resource/CMap/UniJISPro-UCS2-HW-V
Resource/CMap/UniJISPro-UCS2-V
Resource/CMap/UniJISPro-UTF8-V
Resource/CMap/UniJISX0213-UTF32-H
Resource/CMap/UniJISX0213-UTF32-V
Resource/CMap/UniJISX02132004-UTF32-H
Resource/CMap/UniJISX02132004-UTF32-V
Resource/CMap/UniKS-UCS2-H
Resource/CMap/UniKS-UCS2-V
Resource/CMap/UniKS-UTF16-H
Resource/CMap/UniKS-UTF16-V
Resource/CMap/UniKS-UTF32-H
Resource/CMap/UniKS-UTF32-V
Resource/CMap/UniKS-UTF8-H
Resource/CMap/UniKS-UTF8-V
Resource/CMap/V
Resource/CMap/WP-Symbol
Resource/ColorSpace/DefaultCMYK
Resource/ColorSpace/DefaultGray
Resource/ColorSpace/DefaultRGB
Resource/ColorSpace/TrivialCMYK
Resource/ColorSpace/sGray
Resource/ColorSpace/sRGB
Resource/Decoding/FCO_Dingbats
Resource/Decoding/FCO_Symbol
Resource/Decoding/FCO_Unicode
Resource/Decoding/FCO_Wingdings
Resource/Decoding/Latin1
Resource/Decoding/StandardEncoding
Resource/Decoding/Unicode
Resource/Encoding/CEEncoding
Resource/Encoding/ExpertEncoding
Resource/Encoding/ExpertSubsetEncoding
Resource/Encoding/NotDefEncoding
Resource/Encoding/Wingdings
Resource/Font/BookmanURW-DemBol
Resource/Font/BookmanURW-DemBolIta
Resource/Font/BookmanURW-Lig
Resource/Font/BookmanURW-LigIta
Resource/Font/CenturySchURW-Bol
Resource/Font/CenturySchURW-BolIta
Resource/Font/CenturySchURW-Ita
Resource/Font/CenturySchURW-Rom
Resource/Font/ChanceryURW-MedIta
Resource/Font/Dingbats
Resource/Font/NimbusMono-Bold
Resource/Font/NimbusMono-BoldOblique
Resource/Font/NimbusMono-Oblique
Resource/Font/NimbusMono-Regular
Resource/Font/NimbusRomNo9L-Med
Resource/Font/NimbusRomNo9L-MedIta
Resource/Font/NimbusRomNo9L-Reg
Resource/Font/NimbusRomNo9L-RegIta
Resource/Font/NimbusSanL-Bol
Resource/Font/NimbusSanL-BolIta
Resource/Font/NimbusSanL-Reg
Resource/Font/NimbusSanL-RegIta
Resource/Font/NimbusSanNar-Bol
Resource/Font/NimbusSanNar-BolIta
Resource/Font/NimbusSanNar-Ita
Resource/Font/NimbusSanNar-Reg
Resource/Font/PalladioURW-Bol
Resource/Font/PalladioURW-BolIta
Resource/Font/PalladioURW-Ita
Resource/Font/PalladioURW-Rom
Resource/Font/StandardSymL
Resource/Font/URWGothic-Boo
Resource/Font/URWGothic-BooObl
Resource/Font/URWGothic-Dem
Resource/Font/URWGothic-DemObl
Resource/IdiomSet/Pscript5Idiom
Resource/Init/FAPIcidfmap
Resource/Init/FAPIconfig
Resource/Init/FAPIfontmap
Resource/Init/FCOfontmap-PCLPS2
Resource/Init/Fontmap
Resource/Init/Fontmap.GS
Resource/Init/cidfmap
Resource/Init/gs_agl.ps
Resource/Init/gs_btokn.ps
Resource/Init/gs_cet.ps
Resource/Init/gs_cff.ps
Resource/Init/gs_cidcm.ps
Resource/Init/gs_ciddc.ps
Resource/Init/gs_cidfm.ps
Resource/Init/gs_cidfn.ps
Resource/Init/gs_cidtt.ps
Resource/Init/gs_cmap.ps
Resource/Init/gs_cspace.ps
Resource/Init/gs_css_e.ps
Resource/Init/gs_dbt_e.ps
Resource/Init/gs_diskf.ps
Resource/Init/gs_diskn.ps
Resource/Init/gs_dpnxt.ps
Resource/Init/gs_dps.ps
Resource/Init/gs_dps1.ps
Resource/Init/gs_dps2.ps
Resource/Init/gs_dscp.ps
Resource/Init/gs_epsf.ps
Resource/Init/gs_fapi.ps
Resource/Init/gs_fntem.ps
Resource/Init/gs_fonts.ps
Resource/Init/gs_frsd.ps
Resource/Init/gs_icc.ps
Resource/Init/gs_il1_e.ps
Resource/Init/gs_img.ps
Resource/Init/gs_init.ps
Resource/Init/gs_l2img.ps
Resource/Init/gs_lev2.ps
Resource/Init/gs_ll3.ps
Resource/Init/gs_mex_e.ps
Resource/Init/gs_mgl_e.ps
Resource/Init/gs_mro_e.ps
Resource/Init/gs_pdf_e.ps
Resource/Init/gs_pdfwr.ps
Resource/Init/gs_res.ps
Resource/Init/gs_resmp.ps
Resource/Init/gs_setpd.ps
Resource/Init/gs_statd.ps
Resource/Init/gs_std_e.ps
Resource/Init/gs_sym_e.ps
Resource/Init/gs_trap.ps
Resource/Init/gs_ttf.ps
Resource/Init/gs_typ32.ps
Resource/Init/gs_typ42.ps
Resource/Init/gs_type1.ps
Resource/Init/gs_wan_e.ps
Resource/Init/pdf_base.ps
Resource/Init/pdf_cslayer.ps
Resource/Init/pdf_draw.ps
Resource/Init/pdf_font.ps
Resource/Init/pdf_main.ps
Resource/Init/pdf_ops.ps
Resource/Init/pdf_rbld.ps
Resource/Init/pdf_sec.ps
Resource/Init/xlatmap
Resource/SubstCID/CNS1-WMode
Resource/SubstCID/GB1-WMode
Resource/SubstCID/Japan1-WMode
Resource/SubstCID/Korea1-WMode
arch/osx-x86-x86_64-ppc-gcc.h
arch/windows-arm-msvc.h
arch/windows-x64-msvc.h
arch/windows-x86-msvc.h
autogen.sh
base/ConvertUTF.c
base/ConvertUTF.h
base/aes.c
base/aes.h
base/all-arch.mak
base/append_l.com
base/assert_.h
base/bcc32.cfg
base/bench.c
base/catmake
base/copy_one.com
base/cp.bat
base/cp.cmd
base/ctype_.h
base/dirent_.h
base/dos_.h
base/echogs.c
base/errno_.h
base/expat.mak
base/fapi_bs.mak
base/fapi_ft.c
base/fapibstm.c
base/fapiufst.c
base/fcntl_.h
base/freetype.mak
base/gconf.c
base/gconf.h
base/gdbflags.h
base/gdebug.h
base/gdevabuf.c
base/gdevbbox.c
base/gdevbbox.h
base/gdevdbit.c
base/gdevdcrd.c
base/gdevdcrd.h
base/gdevddrw.c
base/gdevddrw.h
base/gdevdevn.c
base/gdevdevn.h
base/gdevdevnprn.h
base/gdevdflt.c
base/gdevdgbr.c
base/gdevdrop.c
base/gdevdsha.c
base/gdevemap.c
base/gdevflp.c
base/gdevflp.h
base/gdevhit.c
base/gdevkrnlsclass.c
base/gdevkrnlsclass.h
base/gdevm1.c
base/gdevm16.c
base/gdevm2.c
base/gdevm24.c
base/gdevm32.c
base/gdevm4.c
base/gdevm40.c
base/gdevm48.c
base/gdevm56.c
base/gdevm64.c
base/gdevm8.c
base/gdevmem.c
base/gdevmem.h
base/gdevmpla.c
base/gdevmpla.h
base/gdevmplt.c
base/gdevmplt.h
base/gdevmr1.c
base/gdevmr2n.c
base/gdevmr8n.c
base/gdevmrop.h
base/gdevmrun.c
base/gdevmrun.h
base/gdevmx.c
base/gdevnfwd.c
base/gdevoflt.c
base/gdevoflt.h
base/gdevp14.c
base/gdevp14.h
base/gdevpccm.c
base/gdevpccm.h
base/gdevpipe.c
base/gdevplnx.c
base/gdevplnx.h
base/gdevppla.c
base/gdevppla.h
base/gdevprn.c
base/gdevprn.h
base/gdevprna.c
base/gdevprna.h
base/gdevpxat.h
base/gdevpxen.h
base/gdevpxop.h
base/gdevrops.c
base/gdevsclass.c
base/gdevsclass.h
base/gdevvec.c
base/gdevvec.h
base/genarch.c
base/genconf.c
base/gendev.c
base/genht.c
base/gp.h
base/gp_dosfe.c
base/gp_dosfs.c
base/gp_dvx.c
base/gp_getnv.c
base/gp_mac.c
base/gp_mac.h
base/gp_macio.c
base/gp_macpoll.c
base/gp_mktmp.c
base/gp_msdll.c
base/gp_msdos.c
base/gp_mshdl.c
base/gp_mslib.c
base/gp_mspol.c
base/gp_msprn.c
base/gp_mswin.c
base/gp_mswin.h
base/gp_nsync.c
base/gp_ntfs.c
base/gp_os2.c
base/gp_os2.h
base/gp_os2fs.c
base/gp_os2pr.c
base/gp_os9.c
base/gp_paper.c
base/gp_psync.c
base/gp_stdia.c
base/gp_stdin.c
base/gp_strdl.c
base/gp_sysv.c
base/gp_unifn.c
base/gp_unifs.c
base/gp_unix.c
base/gp_unix_cache.c
base/gp_upapr.c
base/gp_vms.c
base/gp_wgetv.c
base/gp_win32.c
base/gp_wpapr.c
base/gp_wsync.c
base/gp_wutf8.c
base/gpcheck.h
base/gpgetenv.h
base/gpmisc.c
base/gpmisc.h
base/gpsync.h
base/gs.mak
base/gs_dll_call.h
base/gs_mgl_e.h
base/gs_mro_e.h
base/gsalloc.c
base/gsalloc.h
base/gsalpha.c
base/gsalpha.h
base/gsalphac.c
base/gsalphac.h
base/gsargs.c
base/gsargs.h
base/gsbitcom.c
base/gsbitmap.h
base/gsbitops.c
base/gsbitops.h
base/gsbittab.c
base/gsbittab.h
base/gsccode.h
base/gsccolor.h
base/gscdef.c
base/gscdefs.h
base/gscdevn.c
base/gscdevn.h
base/gscedata.c
base/gscedata.h
base/gscencs.c
base/gscencs.h
base/gschar.c
base/gschar.h
base/gschar0.c
base/gscicach.c
base/gscicach.h
base/gscie.c
base/gscie.h
base/gsciemap.c
base/gscindex.h
base/gsclipsr.c
base/gsclipsr.h
base/gscms.h
base/gscolor.c
base/gscolor.h
base/gscolor1.c
base/gscolor1.h
base/gscolor2.c
base/gscolor2.h
base/gscolor3.c
base/gscolor3.h
base/gscolorbuffer.c
base/gscolorbuffer.h
base/gscompt.h
base/gscoord.c
base/gscoord.h
base/gscparam.c
base/gscpixel.c
base/gscpixel.h
base/gscpm.h
base/gscrd.c
base/gscrd.h
base/gscrdp.c
base/gscrdp.h
base/gscrypt1.c
base/gscrypt1.h
base/gscscie.c
base/gscsel.h
base/gscsepr.c
base/gscsepr.h
base/gscspace.c
base/gscspace.h
base/gscssub.c
base/gscssub.h
base/gsdcolor.h
base/gsdevice.c
base/gsdevice.h
base/gsdevmem.c
base/gsdfilt.c
base/gsdfilt.h
base/gsdll.h
base/gsdllwin.h
base/gsdparam.c
base/gsdpnext.h
base/gsdps.c
base/gsdps.h
base/gsdps1.c
base/gsdsrc.c
base/gsdsrc.h
base/gsequivc.c
base/gsequivc.h
base/gserrors.h
base/gsexit.h
base/gsfcid.c
base/gsfcid2.c
base/gsfcmap.c
base/gsfcmap.h
base/gsfcmap1.c
base/gsflip.c
base/gsflip.h
base/gsfname.c
base/gsfname.h
base/gsfont.c
base/gsfont.h
base/gsfont0.c
base/gsfont0c.c
base/gsform1.h
base/gsfunc.c
base/gsfunc.h
base/gsfunc0.c
base/gsfunc0.h
base/gsfunc3.c
base/gsfunc3.h
base/gsfunc4.c
base/gsfunc4.h
base/gsgc.h
base/gsgcache.c
base/gsgcache.h
base/gsgdata.c
base/gsgdata.h
base/gshsb.c
base/gshsb.h
base/gsht.c
base/gsht.h
base/gsht1.c
base/gsht1.h
base/gshtscr.c
base/gshtx.c
base/gshtx.h
base/gsicc.c
base/gsicc.h
base/gsicc_cache.c
base/gsicc_cache.h
base/gsicc_cms.h
base/gsicc_create.c
base/gsicc_create.h
base/gsicc_lcms.c
base/gsicc_lcms2.c
base/gsicc_manage.c
base/gsicc_manage.h
base/gsicc_monitorcm.c
base/gsicc_nocm.c
base/gsicc_profilecache.c
base/gsicc_profilecache.h
base/gsicc_replacecm.c
base/gsimage.c
base/gsimage.h
base/gsimpath.c
base/gsinit.c
base/gsio.h
base/gsiodev.c
base/gsiodevs.c
base/gsiodisk.c
base/gsiomacres.c
base/gsioram.c
base/gsiorom.c
base/gsiorom.h
base/gsipar3x.h
base/gsiparam.h
base/gsiparm2.h
base/gsiparm3.h
base/gsiparm4.h
base/gsistate.c
base/gsjconf.h
base/gsjmorec.h
base/gslib.c
base/gslib.h
base/gslibctx.c
base/gslibctx.h
base/gsline.c
base/gsline.h
base/gslparam.h
base/gsmalloc.c
base/gsmalloc.h
base/gsmatrix.c
base/gsmatrix.h
base/gsmchunk.c
base/gsmchunk.h
base/gsmd5.c
base/gsmd5.h
base/gsmdebug.h
base/gsmemlok.c
base/gsmemlok.h
base/gsmemory.c
base/gsmemory.h
base/gsmemraw.h
base/gsmemret.c
base/gsmemret.h
base/gsmisc.c
base/gsnamecl.c
base/gsnamecl.h
base/gsncdummy.c
base/gsncdummy.h
base/gsnogc.c
base/gsnogc.h
base/gsnotify.c
base/gsnotify.h
base/gsovrc.c
base/gsovrc.h
base/gspaint.c
base/gspaint.h
base/gsparam.c
base/gsparam.h
base/gsparam2.c
base/gsparams.c
base/gsparams.h
base/gsparamx.c
base/gsparamx.h
base/gspath.c
base/gspath.h
base/gspath1.c
base/gspath2.h
base/gspcolor.c
base/gspcolor.h
base/gspenum.h
base/gspmdrv.c
base/gspmdrv.def
base/gspmdrv.h
base/gspmdrv.icx
base/gspmdrv.rc
base/gsptype1.c
base/gsptype1.h
base/gsptype2.c
base/gsptype2.h
base/gsrect.h
base/gsrefct.h
base/gsromfs0.c
base/gsrop.c
base/gsrop.h
base/gsroprun.c
base/gsroprun1.h
base/gsroprun24.h
base/gsroprun8.h
base/gsropt.h
base/gsroptab.c
base/gsserial.c
base/gsserial.h
base/gsshade.c
base/gsshade.h
base/gssprintf.c
base/gssprintf.h
base/gsstate.c
base/gsstate.h
base/gsstrtok.c
base/gsstrtok.h
base/gsstruct.h
base/gsstype.h
base/gstext.c
base/gstext.h
base/gstiffio.c
base/gstiffio.h
base/gstparam.h
base/gstrans.c
base/gstrans.h
base/gstrap.c
base/gstrap.h
base/gstype1.c
base/gstype1.h
base/gstype2.c
base/gstype42.c
base/gstypes.h
base/gsuid.h
base/gsutil.c
base/gsutil.h
base/gswin.icx
base/gswin.rc
base/gswin16.icx
base/gswin32.rc
base/gsxfont.h
base/gx.h
base/gxacpath.c
base/gxalloc.h
base/gxalpha.h
base/gxarith.h
base/gxband.h
base/gxbcache.c
base/gxbcache.h
base/gxbitfmt.h
base/gxbitmap.h
base/gxbitops.h
base/gxblend.c
base/gxblend.h
base/gxblend1.c
base/gxccache.c
base/gxccman.c
base/gxcdevn.h
base/gxchar.c
base/gxchar.h
base/gxchrout.c
base/gxchrout.h
base/gxcht.c
base/gxcid.h
base/gxcie.h
base/gxcindex.h
base/gxclbits.c
base/gxcldev.h
base/gxclfile.c
base/gxclimag.c
base/gxclio.h
base/gxclip.c
base/gxclip.h
base/gxclip2.c
base/gxclip2.h
base/gxclipm.c
base/gxclipm.h
base/gxclipsr.h
base/gxclist.c
base/gxclist.h
base/gxcllzw.c
base/gxclmem.c
base/gxclmem.h
base/gxclpage.c
base/gxclpage.h
base/gxclpath.c
base/gxclpath.h
base/gxclrast.c
base/gxclread.c
base/gxclrect.c
base/gxclthrd.c
base/gxclthrd.h
base/gxclutil.c
base/gxclzlib.c
base/gxcmap.c
base/gxcmap.h
base/gxcolor2.h
base/gxcomp.h
base/gxcoord.h
base/gxcpath.c
base/gxcpath.h
base/gxcspace.h
base/gxctable.c
base/gxctable.h
base/gxcvalue.h
base/gxdcconv.c
base/gxdcconv.h
base/gxdcolor.c
base/gxdcolor.h
base/gxdda.h
base/gxdevbuf.h
base/gxdevcli.h
base/gxdevice.h
base/gxdevmem.h
base/gxdevndi.c
base/gxdevndi.h
base/gxdevrop.h
base/gxdevsop.h
base/gxdht.h
base/gxdhtres.h
base/gxdhtserial.c
base/gxdhtserial.h
base/gxdither.h
base/gxdownscale.c
base/gxdownscale.h
base/gxdtfill.h
base/gxfapi.c
base/gxfapi.h
base/gxfapiu.c
base/gxfapiu.h
base/gxfarith.h
base/gxfcache.h
base/gxfcid.h
base/gxfcmap.h
base/gxfcmap1.h
base/gxfdrop.c
base/gxfdrop.h
base/gxfill.c
base/gxfill.h
base/gxfillsl.h
base/gxfilltr.h
base/gxfillts.h
base/gxfixed.h
base/gxfmap.h
base/gxfont.h
base/gxfont0.h
base/gxfont0c.h
base/gxfont1.h
base/gxfont42.h
base/gxfrac.h
base/gxftype.h
base/gxfunc.h
base/gxgetbit.h
base/gxhintn.c
base/gxhintn.h
base/gxhintn1.c
base/gxhldevc.c
base/gxhldevc.h
base/gxht.c
base/gxht.h
base/gxht_thresh.c
base/gxht_thresh.h
base/gxhtbit.c
base/gxhttile.h
base/gxhttype.h
base/gxi12bit.c
base/gxi16bit.c
base/gxiclass.h
base/gxicolor.c
base/gxidata.c
base/gxifast.c
base/gximag3x.c
base/gximag3x.h
base/gximage.c
base/gximage.h
base/gximage1.c
base/gximage2.c
base/gximage3.c
base/gximage3.h
base/gximage4.c
base/gximask.c
base/gximask.h
base/gximdecode.c
base/gximdecode.h
base/gximono.c
base/gxino12b.c
base/gxino16b.c
base/gxiodev.h
base/gxiparam.h
base/gxipixel.c
base/gxiscale.c
base/gxistate.h
base/gxline.h
base/gxlum.h
base/gxmatrix.h
base/gxmclip.c
base/gxmclip.h
base/gxobj.h
base/gxoprect.c
base/gxoprect.h
base/gxp1fill.c
base/gxp1impl.h
base/gxpageq.c
base/gxpageq.h
base/gxpaint.c
base/gxpaint.h
base/gxpath.c
base/gxpath.h
base/gxpath2.c
base/gxpcache.h
base/gxpcmap.c
base/gxpcolor.h
base/gxpcopy.c
base/gxpdash.c
base/gxpflat.c
base/gxrplane.h
base/gxsample.c
base/gxsample.h
base/gxsamplp.h
base/gxshade.c
base/gxshade.h
base/gxshade1.c
base/gxshade4.c
base/gxshade4.h
base/gxshade6.c
base/gxstate.h
base/gxstdio.h
base/gxstroke.c
base/gxsync.c
base/gxsync.h
base/gxtext.h
base/gxtmap.h
base/gxttf.h
base/gxttfb.c
base/gxttfb.h
base/gxtype1.c
base/gxtype1.h
base/gxxfont.h
base/gzacpath.h
base/gzcpath.h
base/gzht.h
base/gzline.h
base/gzpath.h
base/gzspotan.c
base/gzspotan.h
base/gzstate.h
base/icc34.h
base/ijs.mak
base/instcopy
base/jbig2.mak
base/jerror_.h
base/jmemcust.c
base/jmemcust.h
base/jpeg.mak
base/jpegxr.mak
base/lcms2.mak
base/lcups.mak
base/lcupsi.mak
base/ldf_jb2.mak
base/lib.mak
base/locale_.h
base/lwf_jp2.mak
base/macgenmcpxml.sh
base/macos-mcp.mak
base/macos_carbon_d_pre.h
base/macos_carbon_pre.h
base/macos_classic_d_pre.h
base/macosx.mak
base/macsystypes.h
base/malloc_.h
base/math_.h
base/md5main.c
base/memento.c
base/memento.h
base/memory_.h
base/mkromfs.c
base/msvccmd.mak
base/msvclib.mak
base/msvctail.mak
base/mv.bat
base/mv.cmd
base/openjpeg.mak
base/openvms.mak
base/openvms.mmk
base/pcwin.mak
base/pipe_.h
base/png.mak
base/png_.h
base/ramfs.c
base/ramfs.h
base/rm.bat
base/rm.cmd
base/rm_all.com
base/rm_one.com
base/sa85d.c
base/sa85d.h
base/sa85x.h
base/saes.c
base/saes.h
base/sarc4.c
base/sarc4.h
base/sbcp.c
base/sbcp.h
base/sbtx.h
base/scanchar.h
base/scantab.c
base/scf.h
base/scfd.c
base/scfdgen.c
base/scfdtab.c
base/scfe.c
base/scfetab.c
base/scfparam.c
base/scfx.h
base/scommon.h
base/sdcparam.c
base/sdcparam.h
base/sdct.h
base/sdctc.c
base/sdctd.c
base/sdcte.c
base/sddparam.c
base/sdeparam.c
base/seexec.c
base/setjmp_.h
base/sfilter.h
base/sfilter2.c
base/sfxboth.c
base/sfxcommon.c
base/sfxfd.c
base/sfxstdio.c
base/sha2.c
base/sha2.h
base/shc.c
base/shc.h
base/sidscale.c
base/sidscale.h
base/siinterp.c
base/siinterp.h
base/simscale.c
base/simscale.h
base/siscale.c
base/siscale.h
base/sisparam.h
base/sjbig2.c
base/sjbig2.h
base/sjbig2_luratech.c
base/sjbig2_luratech.h
base/sjpeg.h
base/sjpegc.c
base/sjpegd.c
base/sjpege.c
base/sjpx_luratech.c
base/sjpx_luratech.h
base/sjpx_openjpeg.c
base/sjpx_openjpeg.h
base/slzwc.c
base/slzwd.c
base/slzwe.c
base/slzwx.h
base/smd5.c
base/smd5.h
base/smtf.c
base/smtf.h
base/spdiff.c
base/spdiffx.h
base/spngp.c
base/spngpx.h
base/spprint.c
base/spprint.h
base/spsdf.c
base/spsdf.h
base/srdline.h
base/srld.c
base/srle.c
base/srlx.h
base/ssha2.c
base/ssha2.h
base/sstring.c
base/sstring.h
base/stat_.h
base/std.h
base/stdint_.h
base/stdio_.h
base/stdpn.h
base/stdpre.h
base/stream.c
base/stream.h
base/strimpl.h
base/string_.h
base/strmio.c
base/strmio.h
base/stub.mak
base/szlibc.c
base/szlibd.c
base/szlibe.c
base/szlibx.h
base/szlibxx.h
base/tiff.mak
base/time_.h
base/ttcalc.c
base/ttcalc.h
base/ttcommon.h
base/ttconf.h
base/ttconfig.h
base/ttfinp.c
base/ttfinp.h
base/ttfmain.c
base/ttfmemd.c
base/ttfmemd.h
base/ttfoutl.h
base/ttfsfnt.h
base/ttinterp.c
base/ttinterp.h
base/ttload.c
base/ttload.h
base/ttmisc.h
base/ttobjs.c
base/ttobjs.h
base/tttables.h
base/tttype.h
base/tttypes.h
base/ugcclib.mak
base/unistd_.h
base/unix-aux.mak
base/unix-dll.mak
base/unix-end.mak
base/unix-gcc.mak
base/unixansi.mak
base/unixhead.mak
base/unixinst.mak
base/unixlink.mak
base/valgrind.h
base/vdtrace.c
base/vdtrace.h
base/version.mak
base/vms_x_fix.h
base/vmsmath.h
base/windows_.h
base/winlib.mak
base/winplat.mak
base/winrtsup.cpp
base/winrtsup.h
base/wrfont.c
base/wrfont.h
base/write_t1.c
base/write_t1.h
base/write_t2.c
base/write_t2.h
base/x_.h
base/xpsprint.cpp
base/zlib.mak
common/cp.bat
common/gccdefs.mak
common/generic.mak
common/msvc_top.mak
common/msvcdefs.mak
common/mv.bat
common/pcdefs.mak
common/rm.bat
common/sgidefs.mak
common/ugcc_top.mak
common/unixdefs.mak
config.mak.in
configure.ac
contrib/chp2200/AUTHORS
contrib/chp2200/COPYING
contrib/chp2200/INSTALL
contrib/contrib.mak
contrib/defs.h
contrib/eplaser/gdevescv.c
contrib/eplaser/gdevescv.h
contrib/epson740/README
contrib/epson740/printerdb_rh5.2
contrib/epson740/printerdb_rh6.0
contrib/epson740/ps-to-printer.fpi_rh5.2
contrib/epson740/upp-HowTo-to-be
contrib/gdevbjc_.c
contrib/gdevbjc_.h
contrib/gdevbjca.c
contrib/gdevcd8.c
contrib/gdevcd8.h
contrib/gdevdj9.c
contrib/gdevgdi.c
contrib/gdevhl12.c
contrib/gdevln03.c
contrib/gdevlx32.c
contrib/gdevlx7.c
contrib/gdevmd2k.c
contrib/gdevop4w.c
contrib/gdevxes.c
contrib/gomni.c
contrib/japanese/dmp_init.ps
contrib/japanese/dmp_site.ps
contrib/japanese/doc/Gdevlips.htm
contrib/japanese/doc/README.gs550j
contrib/japanese/doc/cdj880.txt
contrib/japanese/doc/dj505j.txt
contrib/japanese/doc/djgpp.txt
contrib/japanese/doc/gdev10v.txt
contrib/japanese/doc/gdevalps.txt
contrib/japanese/doc/gdevcd8.txt
contrib/japanese/doc/gdevdmpr.txt
contrib/japanese/doc/gdevfmlbp.txt
contrib/japanese/doc/gdevj100.txt
contrib/japanese/doc/gdevlbp3.txt
contrib/japanese/doc/gdevmag.txt
contrib/japanese/doc/gdevmd2k.txt
contrib/japanese/doc/gdevmjc.txt
contrib/japanese/doc/gdevml6.txt
contrib/japanese/doc/gdevp201.txt
contrib/japanese/doc/gs261j.euc
contrib/japanese/doc/gs261j.txt
contrib/japanese/dviprlib.c
contrib/japanese/dviprlib.h
contrib/japanese/escp_24.src
contrib/japanese/gdev10v.c
contrib/japanese/gdevalps.c
contrib/japanese/gdevdmpr.c
contrib/japanese/gdevespg.c
contrib/japanese/gdevfmlbp.c
contrib/japanese/gdevfmpr.c
contrib/japanese/gdevj100.c
contrib/japanese/gdevlbp3.c
contrib/japanese/gdevmag.c
contrib/japanese/gdevmjc.c
contrib/japanese/gdevmjc.h
contrib/japanese/gdevml6.c
contrib/japanese/gdevnpdl.c
contrib/japanese/gdevp201.c
contrib/japanese/gdevrpdl.c
contrib/lips4/gdevl4r.c
contrib/lips4/gdevl4v.c
contrib/lips4/gdevlips.c
contrib/lips4/gdevlips.h
contrib/lips4/gdevlprn.c
contrib/lips4/gdevlprn.h
contrib/lxm3200-tweaked/LICENSE
contrib/lxm3200-tweaked/README
contrib/lxm3200-tweaked/RELEASE_NOTES
contrib/lxm3200-tweaked/Z12-Z31-QuickSetup
contrib/md2k_md5k/README.jis
contrib/opvp/gdevopvp.c
contrib/opvp/opvp.h
contrib/opvp/opvp_0_2_0.h
contrib/opvp/opvp_common.h
contrib/opvp/opvp_media.def
contrib/pcl3/BUGS
contrib/pcl3/LGPL
contrib/pcl3/NEWS
contrib/pcl3/README
contrib/pcl3/doc/gs-mods.txt
contrib/pcl3/doc/gs-pcl3.1
contrib/pcl3/doc/gs-pcl3.html
contrib/pcl3/doc/gs-pcl3.ref
contrib/pcl3/doc/how-to-report.txt
contrib/pcl3/doc/notes.bbl
contrib/pcl3/doc/notes.tex
contrib/pcl3/doc/pcl3opts.1
contrib/pcl3/doc/pcl3opts.html
contrib/pcl3/doc/pcl3opts.ref
contrib/pcl3/doc/reports.txt
contrib/pcl3/eprn/eprnfs.c
contrib/pcl3/eprn/eprnparm.c
contrib/pcl3/eprn/eprnrend.c
contrib/pcl3/eprn/gdeveprn.c
contrib/pcl3/eprn/gdeveprn.h
contrib/pcl3/eprn/mediasize.c
contrib/pcl3/eprn/mediasize.h
contrib/pcl3/eprn/pagecount.c
contrib/pcl3/eprn/pagecount.h
contrib/pcl3/lib/cups-pcl3
contrib/pcl3/lib/example.mcf
contrib/pcl3/lib/if-pcl3
contrib/pcl3/pcl3.tar.sig
contrib/pcl3/ppd/README
contrib/pcl3/ppd/catppd
contrib/pcl3/ppd/fonts.ppd
contrib/pcl3/ppd/gs-5.50.ppd
contrib/pcl3/ppd/gs-6.01.ppd
contrib/pcl3/ppd/gs-6.50.ppd
contrib/pcl3/ppd/gs-6.51.ppd
contrib/pcl3/ppd/gs-7.00.ppd
contrib/pcl3/ppd/gs-common.ppd
contrib/pcl3/ppd/gs-pcl3-common.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj1120c.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj3xx.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj400.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj500.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj500c.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj510.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj540.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj550c.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj600.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj660c.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj680c.ppd
contrib/pcl3/ppd/gs-pcl3-hpdj8xxc.ppd
contrib/pcl3/ppd/gs-pcl3-hpdjportable.ppd
contrib/pcl3/ppd/gs-pcl3-unspec.ppd
contrib/pcl3/ppd/gs-pcl3-unspecold.ppd
contrib/pcl3/ps/calign.ps
contrib/pcl3/ps/dumppdd.ps
contrib/pcl3/ps/levels-test.ps
contrib/pcl3/ps/margins-A4.ps
contrib/pcl3/ps/margins-A4Rotated.ps
contrib/pcl3/ps/margins-Env10Rotated.ps
contrib/pcl3/ps/margins-EnvDLRotated.ps
contrib/pcl3/ps/margins-Letter.ps
contrib/pcl3/ps/margins-LetterRotated.ps
contrib/pcl3/src/contrib.mak-5.50.add
contrib/pcl3/src/contrib.mak-6.01.add
contrib/pcl3/src/contrib.mak-6.50.add
contrib/pcl3/src/contrib.mak-6.51.add
contrib/pcl3/src/contrib.mak-7.00.add
contrib/pcl3/src/gdevpcl3.c
contrib/pcl3/src/pcl3opts-de.msg
contrib/pcl3/src/pcl3opts-en.msg
contrib/pcl3/src/pcl3opts.c
contrib/pcl3/src/pclcap.c
contrib/pcl3/src/pclcap.h
contrib/pcl3/src/pclcomp.c
contrib/pcl3/src/pclgen.c
contrib/pcl3/src/pclgen.h
contrib/pcl3/src/pclscan.c
contrib/pcl3/src/pclscan.h
contrib/pcl3/src/pclsize.c
contrib/pcl3/src/pclsize.h
contrib/pcl3/src/zmedia2.c-5.50.diff
contrib/pcl3/src/zmedia2.c-6.01.diff
contrib/pcl3/src/zmedia2.c-6.50.diff
contrib/pcl3/src/zmedia2.c-6.51.diff
contrib/pcl3/src/zmedia2.c-7.00.diff
contrib/pscolor/Makefile
contrib/pscolor/black.pdf
contrib/pscolor/black.ps
contrib/pscolor/color.pdf
contrib/pscolor/color.ps
contrib/pscolor/colorsplit.vcproj
contrib/pscolor/common.mak
contrib/pscolor/input.ps
contrib/pscolor/instream.yy
contrib/pscolor/test.c
contrib/pscolor/windows.mak
contrib/uniprint/PM760p.upp
contrib/uniprint/PM760pl.upp
contrib/uniprint/PM820p.upp
contrib/uniprint/PM820pl.upp
contrib/uniprint/Stc670p.upp
contrib/uniprint/Stc670pl.upp
contrib/uniprint/Stc680p.upp
contrib/uniprint/Stc680pl.upp
contrib/uniprint/Stc740p.upp
contrib/uniprint/Stc740pl.upp
contrib/uniprint/Stc760p.upp
contrib/uniprint/Stc760pl.upp
contrib/uniprint/Stc777p.upp
contrib/uniprint/Stc777pl.upp
contrib/uniprint/Stp720p.upp
contrib/uniprint/Stp720pl.upp
contrib/uniprint/Stp870p.upp
contrib/uniprint/Stp870pl.upp
contrib/uniprint/bjc6000a1.upp
contrib/uniprint/bjc6000b1.upp
contrib/uniprint/s400a1.upp
contrib/uniprint/s400b1.upp
contrib/uniprint/sharp.upp
contrib/uniprint/sipixa6.upp
contrib/uniprint/stc740ih.upp
cups/cups.mak
cups/gdevcups.c
cups/libs/Makedefs
cups/libs/configlinux.h
cups/libs/configwin.h
cups/libs/cups/Dependencies
cups/libs/cups/Makefile
cups/libs/cups/adminutil.c
cups/libs/cups/adminutil.h
cups/libs/cups/api-array.header
cups/libs/cups/api-array.shtml
cups/libs/cups/api-cups.header
cups/libs/cups/api-cups.shtml
cups/libs/cups/api-filedir.header
cups/libs/cups/api-filedir.shtml
cups/libs/cups/api-filter.header
cups/libs/cups/api-filter.shtml
cups/libs/cups/api-httpipp.header
cups/libs/cups/api-httpipp.shtml
cups/libs/cups/api-overview.header
cups/libs/cups/api-overview.shtml
cups/libs/cups/api-ppd.header
cups/libs/cups/api-ppd.shtml
cups/libs/cups/array-private.h
cups/libs/cups/array.c
cups/libs/cups/array.h
cups/libs/cups/attr.c
cups/libs/cups/auth.c
cups/libs/cups/backchannel.c
cups/libs/cups/backend.c
cups/libs/cups/backend.h
cups/libs/cups/conflicts.c
cups/libs/cups/cups-private.h
cups/libs/cups/cups.h
cups/libs/cups/custom.c
cups/libs/cups/debug-private.h
cups/libs/cups/debug.c
cups/libs/cups/dest-job.c
cups/libs/cups/dest-localization.c
cups/libs/cups/dest-options.c
cups/libs/cups/dest.c
cups/libs/cups/dir.c
cups/libs/cups/dir.h
cups/libs/cups/emit.c
cups/libs/cups/encode.c
cups/libs/cups/file-private.h
cups/libs/cups/file.c
cups/libs/cups/file.h
cups/libs/cups/getdevices.c
cups/libs/cups/getifaddrs.c
cups/libs/cups/getputfile.c
cups/libs/cups/globals.c
cups/libs/cups/http-addr.c
cups/libs/cups/http-addrlist.c
cups/libs/cups/http-private.h
cups/libs/cups/http-support.c
cups/libs/cups/http.c
cups/libs/cups/http.h
cups/libs/cups/ipp-private.h
cups/libs/cups/ipp-support.c
cups/libs/cups/ipp.c
cups/libs/cups/ipp.h
cups/libs/cups/langprintf.c
cups/libs/cups/language-private.h
cups/libs/cups/language.c
cups/libs/cups/language.h
cups/libs/cups/libcups2.def
cups/libs/cups/libcups2.rc
cups/libs/cups/libcups_s.exp
cups/libs/cups/localize.c
cups/libs/cups/mark.c
cups/libs/cups/md5-private.h
cups/libs/cups/md5.c
cups/libs/cups/md5passwd.c
cups/libs/cups/notify.c
cups/libs/cups/options.c
cups/libs/cups/page.c
cups/libs/cups/ppd-cache.c
cups/libs/cups/ppd-private.h
cups/libs/cups/ppd.c
cups/libs/cups/ppd.h
cups/libs/cups/pwg-media.c
cups/libs/cups/pwg-private.h
cups/libs/cups/pwg.h
cups/libs/cups/raster-private.h
cups/libs/cups/raster.h
cups/libs/cups/request.c
cups/libs/cups/sidechannel.c
cups/libs/cups/sidechannel.h
cups/libs/cups/snmp-private.h
cups/libs/cups/snmp.c
cups/libs/cups/snprintf.c
cups/libs/cups/sspi-private.h
cups/libs/cups/sspi.c
cups/libs/cups/string-private.h
cups/libs/cups/string.c
cups/libs/cups/tempfile.c
cups/libs/cups/test.ppd
cups/libs/cups/test2.ppd
cups/libs/cups/testadmin.c
cups/libs/cups/testarray.c
cups/libs/cups/testconflicts.c
cups/libs/cups/testcups.c
cups/libs/cups/testfile.c
cups/libs/cups/testhttp.c
cups/libs/cups/testi18n.c
cups/libs/cups/testipp.c
cups/libs/cups/testlang.c
cups/libs/cups/testoptions.c
cups/libs/cups/testppd.c
cups/libs/cups/testpwg.c
cups/libs/cups/testsnmp.c
cups/libs/cups/thread-private.h
cups/libs/cups/thread.c
cups/libs/cups/transcode.c
cups/libs/cups/transcode.h
cups/libs/cups/usersys.c
cups/libs/cups/utf8demo.txt
cups/libs/cups/util.c
cups/libs/cups/versioning.h
cups/libs/filter/Dependencies
cups/libs/filter/Makefile
cups/libs/filter/api-raster.header
cups/libs/filter/api-raster.shtml
cups/libs/filter/commandtops.c
cups/libs/filter/common.c
cups/libs/filter/common.h
cups/libs/filter/error.c
cups/libs/filter/gziptoany.c
cups/libs/filter/interpret.c
cups/libs/filter/libcupsimage2.def
cups/libs/filter/libcupsimage_s.exp
cups/libs/filter/postscript-driver.header
cups/libs/filter/postscript-driver.shtml
cups/libs/filter/ppd-compiler.header
cups/libs/filter/ppd-compiler.shtml
cups/libs/filter/pstops.c
cups/libs/filter/raster-driver.header
cups/libs/filter/raster-driver.shtml
cups/libs/filter/raster.c
cups/libs/filter/rasterbench.c
cups/libs/filter/rastertoepson.c
cups/libs/filter/rastertohp.c
cups/libs/filter/rastertolabel.c
cups/libs/filter/rastertopwg.c
cups/libs/filter/spec-ppd.header
cups/libs/filter/spec-ppd.shtml
cups/libs/filter/testraster.c
devices/contrib.mak
devices/devs.mak
devices/gdev3852.c
devices/gdev3b1.c
devices/gdev4081.c
devices/gdev4693.c
devices/gdev8510.c
devices/gdev8bcm.c
devices/gdev8bcm.h
devices/gdevadmp.c
devices/gdevatx.c
devices/gdevbit.c
devices/gdevbj10.c
devices/gdevbjc.h
devices/gdevbjcl.c
devices/gdevbjcl.h
devices/gdevbmp.c
devices/gdevbmp.h
devices/gdevbmpa.c
devices/gdevbmpc.c
devices/gdevccr.c
devices/gdevcdj.c
devices/gdevcfax.c
devices/gdevcif.c
devices/gdevclj.c
devices/gdevcljc.c
devices/gdevcmykog.c
devices/gdevcp50.c
devices/gdevcslw.c
devices/gdevdfax.c
devices/gdevdjet.c
devices/gdevdjtc.c
devices/gdevdljm.c
devices/gdevdljm.h
devices/gdevdm24.c
devices/gdevdsp.c
devices/gdevdsp.h
devices/gdevdsp2.h
devices/gdevepsc.c
devices/gdevepsn.c
devices/gdevescp.c
devices/gdevevga.c
devices/gdevfax.c
devices/gdevfax.h
devices/gdevfpng.c
devices/gdevherc.c
devices/gdevhl7x.c
devices/gdevicov.c
devices/gdevifno.c
devices/gdevijs.c
devices/gdevimgn.c
devices/gdevjbig2.c
devices/gdevjpeg.c
devices/gdevjpx.c
devices/gdevl256.c
devices/gdevl31s.c
devices/gdevlbp8.c
devices/gdevlj56.c
devices/gdevlp8k.c
devices/gdevlxm.c
devices/gdevmac.c
devices/gdevmac.h
devices/gdevmacpictop.h
devices/gdevmacttf.h
devices/gdevmeds.c
devices/gdevmeds.h
devices/gdevmgr.c
devices/gdevmgr.h
devices/gdevmiff.c
devices/gdevmswn.c
devices/gdevmswn.h
devices/gdevmsxf.c
devices/gdevn533.c
devices/gdevo182.c
devices/gdevokii.c
devices/gdevos2p.c
devices/gdevp2up.c
devices/gdevpbm.c
devices/gdevpcfb.c
devices/gdevpcfb.h
devices/gdevpcl.c
devices/gdevpcl.h
devices/gdevpcx.c
devices/gdevpe.c
devices/gdevperm.c
devices/gdevphex.c
devices/gdevpjet.c
devices/gdevplan.c
devices/gdevplib.c
devices/gdevplib.h
devices/gdevpm.h
devices/gdevpng.c
devices/gdevpsd.c
devices/gdevpsim.c
devices/gdevpxut.c
devices/gdevpxut.h
devices/gdevrinkj.c
devices/gdevs3ga.c
devices/gdevsco.c
devices/gdevsgi.c
devices/gdevsgi.h
devices/gdevsj48.c
devices/gdevsnfb.c
devices/gdevsppr.c
devices/gdevstc.c
devices/gdevstc.h
devices/gdevstc1.c
devices/gdevstc2.c
devices/gdevstc3.c
devices/gdevstc4.c
devices/gdevsun.c
devices/gdevsunr.c
devices/gdevsvga.c
devices/gdevsvga.h
devices/gdevtfax.c
devices/gdevtfax.h
devices/gdevtfnx.c
devices/gdevtifs.c
devices/gdevtifs.h
devices/gdevtknk.c
devices/gdevtrac.c
devices/gdevtsep.c
devices/gdevupd.c
devices/gdevvglb.c
devices/gdevwddb.c
devices/gdevwdib.c
devices/gdevwpr2.c
devices/gdevwprn.c
devices/gdevx.c
devices/gdevx.h
devices/gdevxalt.c
devices/gdevxcf.c
devices/gdevxcmp.c
devices/gdevxcmp.h
devices/gdevxini.c
devices/gdevxres.c
devices/gxfcopy.c
devices/gxfcopy.h
devices/minftrsz.c
devices/minftrsz.h
devices/rinkj/evenbetter-rll.c
devices/rinkj/evenbetter-rll.h
devices/rinkj/rinkj-byte-stream.c
devices/rinkj/rinkj-byte-stream.h
devices/rinkj/rinkj-config.c
devices/rinkj/rinkj-config.h
devices/rinkj/rinkj-device.c
devices/rinkj/rinkj-device.h
devices/rinkj/rinkj-dither.c
devices/rinkj/rinkj-dither.h
devices/rinkj/rinkj-epson870.c
devices/rinkj/rinkj-epson870.h
devices/rinkj/rinkj-screen-eb.c
devices/rinkj/rinkj-screen-eb.h
devices/vector/gdevagl.c
devices/vector/gdevagl.h
devices/vector/gdevpdf.c
devices/vector/gdevpdfb.c
devices/vector/gdevpdfb.h
devices/vector/gdevpdfc.c
devices/vector/gdevpdfc.h
devices/vector/gdevpdfd.c
devices/vector/gdevpdfe.c
devices/vector/gdevpdfg.c
devices/vector/gdevpdfg.h
devices/vector/gdevpdfi.c
devices/vector/gdevpdfj.c
devices/vector/gdevpdfk.c
devices/vector/gdevpdfm.c
devices/vector/gdevpdfo.c
devices/vector/gdevpdfo.h
devices/vector/gdevpdfp.c
devices/vector/gdevpdfr.c
devices/vector/gdevpdft.c
devices/vector/gdevpdfu.c
devices/vector/gdevpdfv.c
devices/vector/gdevpdfx.h
devices/vector/gdevpdt.c
devices/vector/gdevpdt.h
devices/vector/gdevpdtb.c
devices/vector/gdevpdtb.h
devices/vector/gdevpdtc.c
devices/vector/gdevpdtd.c
devices/vector/gdevpdtd.h
devices/vector/gdevpdte.c
devices/vector/gdevpdtf.c
devices/vector/gdevpdtf.h
devices/vector/gdevpdti.c
devices/vector/gdevpdti.h
devices/vector/gdevpdts.c
devices/vector/gdevpdts.h
devices/vector/gdevpdtt.c
devices/vector/gdevpdtt.h
devices/vector/gdevpdtv.c
devices/vector/gdevpdtv.h
devices/vector/gdevpdtw.c
devices/vector/gdevpdtw.h
devices/vector/gdevpdtx.h
devices/vector/gdevpsdf.h
devices/vector/gdevpsdi.c
devices/vector/gdevpsdp.c
devices/vector/gdevpsds.c
devices/vector/gdevpsds.h
devices/vector/gdevpsdu.c
devices/vector/gdevpsf.h
devices/vector/gdevpsf1.c
devices/vector/gdevpsf2.c
devices/vector/gdevpsfm.c
devices/vector/gdevpsft.c
devices/vector/gdevpsfu.c
devices/vector/gdevpsfx.c
devices/vector/gdevpsu.c
devices/vector/gdevpsu.h
devices/vector/gdevpx.c
devices/vector/gdevtxtw.c
devices/vector/gdevxps.c
devices/vector/opdfread.h
devices/vector/whitelst.c
devices/vector/whitelst.h
doc/API.htm
doc/AUTHORS
doc/C-style.htm
doc/COPYING
doc/Changes.htm
doc/Commprod.htm
doc/DLL.htm
doc/Deprecated.htm
doc/Details.htm
doc/Details8.htm
doc/Details9.htm
doc/Develop.htm
doc/Devices.htm
doc/Drivers.htm
doc/Fonts.htm
doc/GS9_Color_Management.pdf
doc/GS9_Color_Management.tex
doc/Helpers.htm
doc/Hershey.htm
doc/History1.htm
doc/History2.htm
doc/History3.htm
doc/History4.htm
doc/History5.htm
doc/History6.htm
doc/History7.htm
doc/History8.htm
doc/History9.htm
doc/Install.htm
doc/Issues.htm
doc/Language.htm
doc/Lib.htm
doc/Make.htm
doc/Makefile
doc/News.htm
doc/Projects.htm
doc/Ps-style.htm
doc/Ps2epsi.htm
doc/Ps2pdf.htm
doc/Ps2ps2.htm
doc/Psfiles.htm
doc/README
doc/Readme.htm
doc/Release.htm
doc/SavedPages.htm
doc/Source.htm
doc/Unix-lpr.htm
doc/Use.htm
doc/WhatIsGS.htm
doc/Xfonts.htm
doc/ghostpdl.pdf
doc/ghostpdl.tex
doc/ghostpdl.txt
doc/gs-vms.hlp
doc/gs.css
doc/gsdoc.el
doc/index.html
doc/pclxps/Makefile
doc/pclxps/README
doc/pclxps/ghostpdl.pdf
doc/pclxps/ghostpdl.tex
doc/pclxps/ghostpdl.txt
doc/pscet_status.txt
doc/subclass.htm
doc/thirdparty.htm
examples/alphabet.ps
examples/annots.pdf
examples/chess.ps
examples/cjk/all_ac1.ps
examples/cjk/all_ag1.ps
examples/cjk/all_aj1.ps
examples/cjk/all_aj2.ps
examples/cjk/all_ak1.ps
examples/cjk/article9.ps
examples/cjk/gscjk_ac.ps
examples/cjk/gscjk_ag.ps
examples/cjk/gscjk_aj.ps
examples/cjk/gscjk_ak.ps
examples/cjk/iso2022.ps
examples/cjk/iso2022v.ps
examples/colorcir.ps
examples/doretree.ps
examples/escher.ps
examples/golfer.eps
examples/grayalph.ps
examples/ridt91.eps
examples/snowflak.ps
examples/text_graph_image_cmyk_rgb.pdf
examples/text_graphic_image.pdf
examples/tiger.eps
examples/transparency_example.ps
examples/vasarely.ps
examples/waterfal.ps
expat/COPYING
expat/Changes
expat/MANIFEST
expat/Makefile.in
expat/README
expat/amiga/Makefile
expat/amiga/README.txt
expat/amiga/expat.xml
expat/amiga/expat_lib.c
expat/amiga/expat_vectors.c
expat/amiga/include/inline4/expat.h
expat/amiga/include/interfaces/expat.h
expat/amiga/include/libraries/expat.h
expat/amiga/include/proto/expat.h
expat/amiga/launch.c
expat/amiga/stdlib.c
expat/bcb5/README.txt
expat/bcb5/all_projects.bpg
expat/bcb5/elements.bpf
expat/bcb5/elements.bpr
expat/bcb5/elements.mak
expat/bcb5/expat.bpf
expat/bcb5/expat.bpr
expat/bcb5/expat.mak
expat/bcb5/expat_static.bpf
expat/bcb5/expat_static.bpr
expat/bcb5/expat_static.mak
expat/bcb5/expatw.bpf
expat/bcb5/expatw.bpr
expat/bcb5/expatw.mak
expat/bcb5/expatw_static.bpf
expat/bcb5/expatw_static.bpr
expat/bcb5/expatw_static.mak
expat/bcb5/libexpat_mtd.def
expat/bcb5/libexpatw_mtd.def
expat/bcb5/makefile.mak
expat/bcb5/outline.bpf
expat/bcb5/outline.bpr
expat/bcb5/outline.mak
expat/bcb5/setup.bat
expat/bcb5/xmlwf.bpf
expat/bcb5/xmlwf.bpr
expat/bcb5/xmlwf.mak
expat/configure
expat/configure.in
expat/conftools/PrintPath
expat/conftools/ac_c_bigendian_cross.m4
expat/conftools/config.guess
expat/conftools/config.sub
expat/conftools/expat.m4
expat/conftools/get-version.sh
expat/conftools/install-sh
expat/conftools/libtool.m4
expat/conftools/ltmain.sh
expat/conftools/mkinstalldirs
expat/doc/expat.png
expat/doc/reference.html
expat/doc/style.css
expat/doc/valid-xhtml10.png
expat/doc/xmlwf.1
expat/doc/xmlwf.sgml
expat/examples/elements.c
expat/examples/elements.dsp
expat/examples/outline.c
expat/examples/outline.dsp
expat/expat.dsw
expat/expat_config.h.in
expat/lib/Makefile.MPW
expat/lib/amigaconfig.h
expat/lib/ascii.h
expat/lib/asciitab.h
expat/lib/expat.dsp
expat/lib/expat.h
expat/lib/expat_external.h
expat/lib/expat_static.dsp
expat/lib/expatw.dsp
expat/lib/expatw_static.dsp
expat/lib/iasciitab.h
expat/lib/internal.h
expat/lib/latin1tab.h
expat/lib/libexpat.def
expat/lib/libexpatw.def
expat/lib/macconfig.h
expat/lib/nametab.h
expat/lib/utf8tab.h
expat/lib/winconfig.h
expat/lib/xmlparse.c
expat/lib/xmlrole.c
expat/lib/xmlrole.h
expat/lib/xmltok.c
expat/lib/xmltok.h
expat/lib/xmltok_impl.c
expat/lib/xmltok_impl.h
expat/lib/xmltok_ns.c
expat/tests/README.txt
expat/tests/benchmark/README.txt
expat/tests/benchmark/benchmark.c
expat/tests/benchmark/benchmark.dsp
expat/tests/benchmark/benchmark.dsw
expat/tests/chardata.c
expat/tests/chardata.h
expat/tests/minicheck.c
expat/tests/minicheck.h
expat/tests/runtests.c
expat/tests/runtestspp.cpp
expat/tests/xmltest.sh
expat/vms/README.vms
expat/vms/descrip.mms
expat/vms/expat_config.h
expat/win32/MANIFEST.txt
expat/win32/README.txt
expat/win32/expat.iss
expat/xmlwf/codepage.c
expat/xmlwf/codepage.h
expat/xmlwf/ct.c
expat/xmlwf/filemap.h
expat/xmlwf/readfilemap.c
expat/xmlwf/unixfilemap.c
expat/xmlwf/win32filemap.c
expat/xmlwf/xmlfile.c
expat/xmlwf/xmlfile.h
expat/xmlwf/xmlmime.c
expat/xmlwf/xmlmime.h
expat/xmlwf/xmltchar.h
expat/xmlwf/xmlurl.h
expat/xmlwf/xmlwf.c
expat/xmlwf/xmlwf.dsp
expat/xmlwf/xmlwin32url.cxx
freetype/CMakeLists.txt
freetype/ChangeLog
freetype/ChangeLog.20
freetype/ChangeLog.21
freetype/ChangeLog.22
freetype/ChangeLog.23
freetype/ChangeLog.24
freetype/Jamfile
freetype/Jamrules
freetype/Makefile
freetype/README
freetype/README.git
freetype/autogen.sh
freetype/builds/amiga/README
freetype/builds/amiga/include/config/ftconfig.h
freetype/builds/amiga/include/config/ftmodule.h
freetype/builds/amiga/makefile
freetype/builds/amiga/makefile.os4
freetype/builds/amiga/smakefile
freetype/builds/amiga/src/base/ftdebug.c
freetype/builds/amiga/src/base/ftsystem.c
freetype/builds/ansi/ansi-def.mk
freetype/builds/ansi/ansi.mk
freetype/builds/atari/ATARI.H
freetype/builds/atari/FNames.SIC
freetype/builds/atari/FREETYPE.PRJ
freetype/builds/atari/README.TXT
freetype/builds/atari/deflinejoiner.awk
freetype/builds/atari/gen-purec-patch.sh
freetype/builds/beos/beos-def.mk
freetype/builds/beos/beos.mk
freetype/builds/beos/detect.mk
freetype/builds/cmake/iOS.cmake
freetype/builds/compiler/ansi-cc.mk
freetype/builds/compiler/bcc-dev.mk
freetype/builds/compiler/bcc.mk
freetype/builds/compiler/emx.mk
freetype/builds/compiler/gcc-dev.mk
freetype/builds/compiler/gcc.mk
freetype/builds/compiler/intelc.mk
freetype/builds/compiler/unix-lcc.mk
freetype/builds/compiler/visualage.mk
freetype/builds/compiler/visualc.mk
freetype/builds/compiler/watcom.mk
freetype/builds/compiler/win-lcc.mk
freetype/builds/detect.mk
freetype/builds/dos/detect.mk
freetype/builds/dos/dos-def.mk
freetype/builds/dos/dos-emx.mk
freetype/builds/dos/dos-gcc.mk
freetype/builds/dos/dos-wat.mk
freetype/builds/exports.mk
freetype/builds/freetype.mk
freetype/builds/link_dos.mk
freetype/builds/link_std.mk
freetype/builds/mac/FreeType.m68k_cfm.make.txt
freetype/builds/mac/FreeType.m68k_far.make.txt
freetype/builds/mac/FreeType.ppc_carbon.make.txt
freetype/builds/mac/FreeType.ppc_classic.make.txt
freetype/builds/mac/README
freetype/builds/mac/ascii2mpw.py
freetype/builds/mac/freetype-Info.plist
freetype/builds/mac/ftlib.prj.xml
freetype/builds/mac/ftmac.c
freetype/builds/modules.mk
freetype/builds/newline
freetype/builds/os2/detect.mk
freetype/builds/os2/os2-def.mk
freetype/builds/os2/os2-dev.mk
freetype/builds/os2/os2-gcc.mk
freetype/builds/symbian/bld.inf
freetype/builds/symbian/freetype.mmp
freetype/builds/toplevel.mk
freetype/builds/unix/aclocal.m4
freetype/builds/unix/config.guess
freetype/builds/unix/config.sub
freetype/builds/unix/configure.ac
freetype/builds/unix/configure.raw
freetype/builds/unix/detect.mk
freetype/builds/unix/freetype-config.in
freetype/builds/unix/freetype2.in
freetype/builds/unix/freetype2.m4
freetype/builds/unix/ft-munmap.m4
freetype/builds/unix/ftconfig.in
freetype/builds/unix/ftsystem.c
freetype/builds/unix/install-sh
freetype/builds/unix/install.mk
freetype/builds/unix/ltmain.sh
freetype/builds/unix/mkinstalldirs
freetype/builds/unix/pkg.m4
freetype/builds/unix/unix-cc.in
freetype/builds/unix/unix-def.in
freetype/builds/unix/unix-dev.mk
freetype/builds/unix/unix-lcc.mk
freetype/builds/unix/unix.mk
freetype/builds/unix/unixddef.mk
freetype/builds/vms/ftconfig.h
freetype/builds/vms/ftsystem.c
freetype/builds/wince/ftdebug.c
freetype/builds/wince/vc2005-ce/freetype.sln
freetype/builds/wince/vc2005-ce/freetype.vcproj
freetype/builds/wince/vc2005-ce/index.html
freetype/builds/wince/vc2008-ce/freetype.sln
freetype/builds/wince/vc2008-ce/freetype.vcproj
freetype/builds/wince/vc2008-ce/index.html
freetype/builds/windows/detect.mk
freetype/builds/windows/ftdebug.c
freetype/builds/windows/vc2005/freetype.sln
freetype/builds/windows/vc2005/freetype.vcproj
freetype/builds/windows/vc2005/index.html
freetype/builds/windows/vc2008/freetype.sln
freetype/builds/windows/vc2008/freetype.vcproj
freetype/builds/windows/vc2008/index.html
freetype/builds/windows/vc2010/freetype.sln
freetype/builds/windows/vc2010/freetype.user.props
freetype/builds/windows/vc2010/freetype.vcxproj
freetype/builds/windows/vc2010/freetype.vcxproj.filters
freetype/builds/windows/vc2010/index.html
freetype/builds/windows/visualc/freetype.dsp
freetype/builds/windows/visualc/freetype.dsw
freetype/builds/windows/visualc/freetype.sln
freetype/builds/windows/visualc/freetype.vcproj
freetype/builds/windows/visualc/index.html
freetype/builds/windows/visualce/freetype.dsp
freetype/builds/windows/visualce/freetype.dsw
freetype/builds/windows/visualce/freetype.vcproj
freetype/builds/windows/visualce/index.html
freetype/builds/windows/w32-bcc.mk
freetype/builds/windows/w32-bccd.mk
freetype/builds/windows/w32-dev.mk
freetype/builds/windows/w32-gcc.mk
freetype/builds/windows/w32-icc.mk
freetype/builds/windows/w32-intl.mk
freetype/builds/windows/w32-lcc.mk
freetype/builds/windows/w32-mingw32.mk
freetype/builds/windows/w32-vcc.mk
freetype/builds/windows/w32-wat.mk
freetype/builds/windows/win32-def.mk
freetype/configure
freetype/devel/ft2build.h
freetype/devel/ftoption.h
freetype/docs/CHANGES
freetype/docs/CMAKE
freetype/docs/CUSTOMIZE
freetype/docs/DEBUG
freetype/docs/FTL.TXT
freetype/docs/GPLv2.TXT
freetype/docs/INSTALL
freetype/docs/INSTALL.ANY
freetype/docs/INSTALL.CROSS
freetype/docs/INSTALL.GNU
freetype/docs/INSTALL.MAC
freetype/docs/INSTALL.UNIX
freetype/docs/INSTALL.VMS
freetype/docs/LICENSE.TXT
freetype/docs/MAKEPP
freetype/docs/PROBLEMS
freetype/docs/TODO
freetype/docs/VERSION.DLL
freetype/docs/formats.txt
freetype/docs/freetype-config.1
freetype/docs/raster.txt
freetype/docs/reference/README
freetype/docs/reference/ft2-auto_hinter.html
freetype/docs/reference/ft2-base_interface.html
freetype/docs/reference/ft2-basic_types.html
freetype/docs/reference/ft2-bdf_fonts.html
freetype/docs/reference/ft2-bitmap_handling.html
freetype/docs/reference/ft2-bzip2.html
freetype/docs/reference/ft2-cache_subsystem.html
freetype/docs/reference/ft2-cff_driver.html
freetype/docs/reference/ft2-cid_fonts.html
freetype/docs/reference/ft2-computations.html
freetype/docs/reference/ft2-font_formats.html
freetype/docs/reference/ft2-gasp_table.html
freetype/docs/reference/ft2-glyph_management.html
freetype/docs/reference/ft2-glyph_stroker.html
freetype/docs/reference/ft2-glyph_variants.html
freetype/docs/reference/ft2-gx_validation.html
freetype/docs/reference/ft2-gzip.html
freetype/docs/reference/ft2-header_file_macros.html
freetype/docs/reference/ft2-header_inclusion.html
freetype/docs/reference/ft2-incremental.html
freetype/docs/reference/ft2-index.html
freetype/docs/reference/ft2-lcd_filtering.html
freetype/docs/reference/ft2-list_processing.html
freetype/docs/reference/ft2-lzw.html
freetype/docs/reference/ft2-mac_specific.html
freetype/docs/reference/ft2-module_management.html
freetype/docs/reference/ft2-multiple_masters.html
freetype/docs/reference/ft2-ot_validation.html
freetype/docs/reference/ft2-outline_processing.html
freetype/docs/reference/ft2-pfr_fonts.html
freetype/docs/reference/ft2-quick_advance.html
freetype/docs/reference/ft2-raster.html
freetype/docs/reference/ft2-sfnt_names.html
freetype/docs/reference/ft2-sizes_management.html
freetype/docs/reference/ft2-system_interface.html
freetype/docs/reference/ft2-toc.html
freetype/docs/reference/ft2-truetype_engine.html
freetype/docs/reference/ft2-truetype_tables.html
freetype/docs/reference/ft2-tt_driver.html
freetype/docs/reference/ft2-type1_tables.html
freetype/docs/reference/ft2-user_allocation.html
freetype/docs/reference/ft2-version.html
freetype/docs/reference/ft2-winfnt_fonts.html
freetype/docs/release
freetype/include/config/ftconfig.h
freetype/include/config/ftheader.h
freetype/include/config/ftmodule.h
freetype/include/config/ftoption.h
freetype/include/config/ftstdlib.h
freetype/include/freetype.h
freetype/include/ft2build.h
freetype/include/ftadvanc.h
freetype/include/ftautoh.h
freetype/include/ftbbox.h
freetype/include/ftbdf.h
freetype/include/ftbitmap.h
freetype/include/ftbzip2.h
freetype/include/ftcache.h
freetype/include/ftcffdrv.h
freetype/include/ftchapters.h
freetype/include/ftcid.h
freetype/include/fterrdef.h
freetype/include/fterrors.h
freetype/include/ftgasp.h
freetype/include/ftglyph.h
freetype/include/ftgxval.h
freetype/include/ftgzip.h
freetype/include/ftimage.h
freetype/include/ftincrem.h
freetype/include/ftlcdfil.h
freetype/include/ftlist.h
freetype/include/ftlzw.h
freetype/include/ftmac.h
freetype/include/ftmm.h
freetype/include/ftmodapi.h
freetype/include/ftmoderr.h
freetype/include/ftotval.h
freetype/include/ftoutln.h
freetype/include/ftpfr.h
freetype/include/ftrender.h
freetype/include/ftsizes.h
freetype/include/ftsnames.h
freetype/include/ftstroke.h
freetype/include/ftsynth.h
freetype/include/ftsystem.h
freetype/include/fttrigon.h
freetype/include/ftttdrv.h
freetype/include/fttypes.h
freetype/include/ftwinfnt.h
freetype/include/ftxf86.h
freetype/include/internal/autohint.h
freetype/include/internal/ftcalc.h
freetype/include/internal/ftdebug.h
freetype/include/internal/ftdriver.h
freetype/include/internal/ftgloadr.h
freetype/include/internal/ftmemory.h
freetype/include/internal/ftobjs.h
freetype/include/internal/ftpic.h
freetype/include/internal/ftrfork.h
freetype/include/internal/ftserv.h
freetype/include/internal/ftstream.h
freetype/include/internal/fttrace.h
freetype/include/internal/ftvalid.h
freetype/include/internal/internal.h
freetype/include/internal/psaux.h
freetype/include/internal/pshints.h
freetype/include/internal/services/svbdf.h
freetype/include/internal/services/svcid.h
freetype/include/internal/services/svgldict.h
freetype/include/internal/services/svgxval.h
freetype/include/internal/services/svkern.h
freetype/include/internal/services/svmm.h
freetype/include/internal/services/svotval.h
freetype/include/internal/services/svpfr.h
freetype/include/internal/services/svpostnm.h
freetype/include/internal/services/svprop.h
freetype/include/internal/services/svpscmap.h
freetype/include/internal/services/svpsinfo.h
freetype/include/internal/services/svsfnt.h
freetype/include/internal/services/svttcmap.h
freetype/include/internal/services/svtteng.h
freetype/include/internal/services/svttglyf.h
freetype/include/internal/services/svwinfnt.h
freetype/include/internal/services/svxf86nm.h
freetype/include/internal/sfnt.h
freetype/include/internal/t1types.h
freetype/include/internal/tttypes.h
freetype/include/t1tables.h
freetype/include/ttnameid.h
freetype/include/tttables.h
freetype/include/tttags.h
freetype/include/ttunpat.h
freetype/modules.cfg
freetype/objs/README
freetype/src/Jamfile
freetype/src/autofit/Jamfile
freetype/src/autofit/afangles.c
freetype/src/autofit/afangles.h
freetype/src/autofit/afblue.c
freetype/src/autofit/afblue.cin
freetype/src/autofit/afblue.dat
freetype/src/autofit/afblue.h
freetype/src/autofit/afblue.hin
freetype/src/autofit/afcjk.c
freetype/src/autofit/afcjk.h
freetype/src/autofit/afcover.h
freetype/src/autofit/afdummy.c
freetype/src/autofit/afdummy.h
freetype/src/autofit/aferrors.h
freetype/src/autofit/afglobal.c
freetype/src/autofit/afglobal.h
freetype/src/autofit/afhints.c
freetype/src/autofit/afhints.h
freetype/src/autofit/afindic.c
freetype/src/autofit/afindic.h
freetype/src/autofit/aflatin.c
freetype/src/autofit/aflatin.h
freetype/src/autofit/aflatin2.c
freetype/src/autofit/aflatin2.h
freetype/src/autofit/afloader.c
freetype/src/autofit/afloader.h
freetype/src/autofit/afmodule.c
freetype/src/autofit/afmodule.h
freetype/src/autofit/afpic.c
freetype/src/autofit/afpic.h
freetype/src/autofit/afranges.c
freetype/src/autofit/afranges.h
freetype/src/autofit/afscript.h
freetype/src/autofit/afstyles.h
freetype/src/autofit/aftypes.h
freetype/src/autofit/afwarp.c
freetype/src/autofit/afwarp.h
freetype/src/autofit/afwrtsys.h
freetype/src/autofit/autofit.c
freetype/src/autofit/hbshim.c
freetype/src/autofit/hbshim.h
freetype/src/autofit/module.mk
freetype/src/autofit/rules.mk
freetype/src/base/Jamfile
freetype/src/base/basepic.c
freetype/src/base/basepic.h
freetype/src/base/ftadvanc.c
freetype/src/base/ftapi.c
freetype/src/base/ftbase.c
freetype/src/base/ftbase.h
freetype/src/base/ftbbox.c
freetype/src/base/ftbdf.c
freetype/src/base/ftbitmap.c
freetype/src/base/ftcalc.c
freetype/src/base/ftcid.c
freetype/src/base/ftdbgmem.c
freetype/src/base/ftdebug.c
freetype/src/base/ftfstype.c
freetype/src/base/ftgasp.c
freetype/src/base/ftgloadr.c
freetype/src/base/ftglyph.c
freetype/src/base/ftgxval.c
freetype/src/base/ftinit.c
freetype/src/base/ftlcdfil.c
freetype/src/base/ftmac.c
freetype/src/base/ftmm.c
freetype/src/base/ftobjs.c
freetype/src/base/ftotval.c
freetype/src/base/ftoutln.c
freetype/src/base/ftpatent.c
freetype/src/base/ftpfr.c
freetype/src/base/ftpic.c
freetype/src/base/ftrfork.c
freetype/src/base/ftsnames.c
freetype/src/base/ftstream.c
freetype/src/base/ftstroke.c
freetype/src/base/ftsynth.c
freetype/src/base/ftsystem.c
freetype/src/base/fttrigon.c
freetype/src/base/fttype1.c
freetype/src/base/ftutil.c
freetype/src/base/ftwinfnt.c
freetype/src/base/ftxf86.c
freetype/src/base/md5.c
freetype/src/base/md5.h
freetype/src/base/rules.mk
freetype/src/bdf/Jamfile
freetype/src/bdf/README
freetype/src/bdf/bdf.c
freetype/src/bdf/bdf.h
freetype/src/bdf/bdfdrivr.c
freetype/src/bdf/bdfdrivr.h
freetype/src/bdf/bdferror.h
freetype/src/bdf/bdflib.c
freetype/src/bdf/module.mk
freetype/src/bdf/rules.mk
freetype/src/bzip2/Jamfile
freetype/src/bzip2/ftbzip2.c
freetype/src/bzip2/rules.mk
freetype/src/cache/Jamfile
freetype/src/cache/ftcache.c
freetype/src/cache/ftcbasic.c
freetype/src/cache/ftccache.c
freetype/src/cache/ftccache.h
freetype/src/cache/ftccback.h
freetype/src/cache/ftccmap.c
freetype/src/cache/ftcerror.h
freetype/src/cache/ftcglyph.c
freetype/src/cache/ftcglyph.h
freetype/src/cache/ftcimage.c
freetype/src/cache/ftcimage.h
freetype/src/cache/ftcmanag.c
freetype/src/cache/ftcmanag.h
freetype/src/cache/ftcmru.c
freetype/src/cache/ftcmru.h
freetype/src/cache/ftcsbits.c
freetype/src/cache/ftcsbits.h
freetype/src/cache/rules.mk
freetype/src/cff/Jamfile
freetype/src/cff/cf2arrst.c
freetype/src/cff/cf2arrst.h
freetype/src/cff/cf2blues.c
freetype/src/cff/cf2blues.h
freetype/src/cff/cf2error.c
freetype/src/cff/cf2error.h
freetype/src/cff/cf2fixed.h
freetype/src/cff/cf2font.c
freetype/src/cff/cf2font.h
freetype/src/cff/cf2ft.c
freetype/src/cff/cf2ft.h
freetype/src/cff/cf2glue.h
freetype/src/cff/cf2hints.c
freetype/src/cff/cf2hints.h
freetype/src/cff/cf2intrp.c
freetype/src/cff/cf2intrp.h
freetype/src/cff/cf2read.c
freetype/src/cff/cf2read.h
freetype/src/cff/cf2stack.c
freetype/src/cff/cf2stack.h
freetype/src/cff/cf2types.h
freetype/src/cff/cff.c
freetype/src/cff/cffcmap.c
freetype/src/cff/cffcmap.h
freetype/src/cff/cffdrivr.c
freetype/src/cff/cffdrivr.h
freetype/src/cff/cfferrs.h
freetype/src/cff/cffgload.c
freetype/src/cff/cffgload.h
freetype/src/cff/cffload.c
freetype/src/cff/cffload.h
freetype/src/cff/cffobjs.c
freetype/src/cff/cffobjs.h
freetype/src/cff/cffparse.c
freetype/src/cff/cffparse.h
freetype/src/cff/cffpic.c
freetype/src/cff/cffpic.h
freetype/src/cff/cfftoken.h
freetype/src/cff/cfftypes.h
freetype/src/cff/module.mk
freetype/src/cff/rules.mk
freetype/src/cid/Jamfile
freetype/src/cid/ciderrs.h
freetype/src/cid/cidgload.c
freetype/src/cid/cidgload.h
freetype/src/cid/cidload.c
freetype/src/cid/cidload.h
freetype/src/cid/cidobjs.c
freetype/src/cid/cidobjs.h
freetype/src/cid/cidparse.c
freetype/src/cid/cidparse.h
freetype/src/cid/cidriver.c
freetype/src/cid/cidriver.h
freetype/src/cid/cidtoken.h
freetype/src/cid/module.mk
freetype/src/cid/rules.mk
freetype/src/cid/type1cid.c
freetype/src/gxvalid/Jamfile
freetype/src/gxvalid/README
freetype/src/gxvalid/gxvalid.c
freetype/src/gxvalid/gxvalid.h
freetype/src/gxvalid/gxvbsln.c
freetype/src/gxvalid/gxvcommn.c
freetype/src/gxvalid/gxvcommn.h
freetype/src/gxvalid/gxverror.h
freetype/src/gxvalid/gxvfeat.c
freetype/src/gxvalid/gxvfeat.h
freetype/src/gxvalid/gxvfgen.c
freetype/src/gxvalid/gxvjust.c
freetype/src/gxvalid/gxvkern.c
freetype/src/gxvalid/gxvlcar.c
freetype/src/gxvalid/gxvmod.c
freetype/src/gxvalid/gxvmod.h
freetype/src/gxvalid/gxvmort.c
freetype/src/gxvalid/gxvmort.h
freetype/src/gxvalid/gxvmort0.c
freetype/src/gxvalid/gxvmort1.c
freetype/src/gxvalid/gxvmort2.c
freetype/src/gxvalid/gxvmort4.c
freetype/src/gxvalid/gxvmort5.c
freetype/src/gxvalid/gxvmorx.c
freetype/src/gxvalid/gxvmorx.h
freetype/src/gxvalid/gxvmorx0.c
freetype/src/gxvalid/gxvmorx1.c
freetype/src/gxvalid/gxvmorx2.c
freetype/src/gxvalid/gxvmorx4.c
freetype/src/gxvalid/gxvmorx5.c
freetype/src/gxvalid/gxvopbd.c
freetype/src/gxvalid/gxvprop.c
freetype/src/gxvalid/gxvtrak.c
freetype/src/gxvalid/module.mk
freetype/src/gxvalid/rules.mk
freetype/src/gzip/Jamfile
freetype/src/gzip/adler32.c
freetype/src/gzip/ftgzip.c
freetype/src/gzip/infblock.c
freetype/src/gzip/infblock.h
freetype/src/gzip/infcodes.c
freetype/src/gzip/infcodes.h
freetype/src/gzip/inffixed.h
freetype/src/gzip/inflate.c
freetype/src/gzip/inftrees.c
freetype/src/gzip/inftrees.h
freetype/src/gzip/infutil.c
freetype/src/gzip/infutil.h
freetype/src/gzip/rules.mk
freetype/src/gzip/zconf.h
freetype/src/gzip/zlib.h
freetype/src/gzip/zutil.c
freetype/src/gzip/zutil.h
freetype/src/lzw/Jamfile
freetype/src/lzw/ftlzw.c
freetype/src/lzw/ftzopen.c
freetype/src/lzw/ftzopen.h
freetype/src/lzw/rules.mk
freetype/src/otvalid/Jamfile
freetype/src/otvalid/module.mk
freetype/src/otvalid/otvalid.c
freetype/src/otvalid/otvalid.h
freetype/src/otvalid/otvbase.c
freetype/src/otvalid/otvcommn.c
freetype/src/otvalid/otvcommn.h
freetype/src/otvalid/otverror.h
freetype/src/otvalid/otvgdef.c
freetype/src/otvalid/otvgpos.c
freetype/src/otvalid/otvgpos.h
freetype/src/otvalid/otvgsub.c
freetype/src/otvalid/otvjstf.c
freetype/src/otvalid/otvmath.c
freetype/src/otvalid/otvmod.c
freetype/src/otvalid/otvmod.h
freetype/src/otvalid/rules.mk
freetype/src/pcf/Jamfile
freetype/src/pcf/README
freetype/src/pcf/module.mk
freetype/src/pcf/pcf.c
freetype/src/pcf/pcf.h
freetype/src/pcf/pcfdrivr.c
freetype/src/pcf/pcfdrivr.h
freetype/src/pcf/pcferror.h
freetype/src/pcf/pcfread.c
freetype/src/pcf/pcfread.h
freetype/src/pcf/pcfutil.c
freetype/src/pcf/pcfutil.h
freetype/src/pcf/rules.mk
freetype/src/pfr/Jamfile
freetype/src/pfr/module.mk
freetype/src/pfr/pfr.c
freetype/src/pfr/pfrcmap.c
freetype/src/pfr/pfrcmap.h
freetype/src/pfr/pfrdrivr.c
freetype/src/pfr/pfrdrivr.h
freetype/src/pfr/pfrerror.h
freetype/src/pfr/pfrgload.c
freetype/src/pfr/pfrgload.h
freetype/src/pfr/pfrload.c
freetype/src/pfr/pfrload.h
freetype/src/pfr/pfrobjs.c
freetype/src/pfr/pfrobjs.h
freetype/src/pfr/pfrsbit.c
freetype/src/pfr/pfrsbit.h
freetype/src/pfr/pfrtypes.h
freetype/src/pfr/rules.mk
freetype/src/psaux/Jamfile
freetype/src/psaux/afmparse.c
freetype/src/psaux/afmparse.h
freetype/src/psaux/module.mk
freetype/src/psaux/psaux.c
freetype/src/psaux/psauxerr.h
freetype/src/psaux/psauxmod.c
freetype/src/psaux/psauxmod.h
freetype/src/psaux/psconv.c
freetype/src/psaux/psconv.h
freetype/src/psaux/psobjs.c
freetype/src/psaux/psobjs.h
freetype/src/psaux/rules.mk
freetype/src/psaux/t1cmap.c
freetype/src/psaux/t1cmap.h
freetype/src/psaux/t1decode.c
freetype/src/psaux/t1decode.h
freetype/src/pshinter/Jamfile
freetype/src/pshinter/module.mk
freetype/src/pshinter/pshalgo.c
freetype/src/pshinter/pshalgo.h
freetype/src/pshinter/pshglob.c
freetype/src/pshinter/pshglob.h
freetype/src/pshinter/pshinter.c
freetype/src/pshinter/pshmod.c
freetype/src/pshinter/pshmod.h
freetype/src/pshinter/pshnterr.h
freetype/src/pshinter/pshpic.c
freetype/src/pshinter/pshpic.h
freetype/src/pshinter/pshrec.c
freetype/src/pshinter/pshrec.h
freetype/src/pshinter/rules.mk
freetype/src/psnames/Jamfile
freetype/src/psnames/module.mk
freetype/src/psnames/psmodule.c
freetype/src/psnames/psmodule.h
freetype/src/psnames/psnamerr.h
freetype/src/psnames/psnames.c
freetype/src/psnames/pspic.c
freetype/src/psnames/pspic.h
freetype/src/psnames/pstables.h
freetype/src/psnames/rules.mk
freetype/src/raster/Jamfile
freetype/src/raster/ftmisc.h
freetype/src/raster/ftraster.c
freetype/src/raster/ftraster.h
freetype/src/raster/ftrend1.c
freetype/src/raster/ftrend1.h
freetype/src/raster/module.mk
freetype/src/raster/raster.c
freetype/src/raster/rasterrs.h
freetype/src/raster/rastpic.c
freetype/src/raster/rastpic.h
freetype/src/raster/rules.mk
freetype/src/sfnt/Jamfile
freetype/src/sfnt/module.mk
freetype/src/sfnt/pngshim.c
freetype/src/sfnt/pngshim.h
freetype/src/sfnt/rules.mk
freetype/src/sfnt/sfdriver.c
freetype/src/sfnt/sfdriver.h
freetype/src/sfnt/sferrors.h
freetype/src/sfnt/sfnt.c
freetype/src/sfnt/sfntpic.c
freetype/src/sfnt/sfntpic.h
freetype/src/sfnt/sfobjs.c
freetype/src/sfnt/sfobjs.h
freetype/src/sfnt/ttbdf.c
freetype/src/sfnt/ttbdf.h
freetype/src/sfnt/ttcmap.c
freetype/src/sfnt/ttcmap.h
freetype/src/sfnt/ttcmapc.h
freetype/src/sfnt/ttkern.c
freetype/src/sfnt/ttkern.h
freetype/src/sfnt/ttload.c
freetype/src/sfnt/ttload.h
freetype/src/sfnt/ttmtx.c
freetype/src/sfnt/ttmtx.h
freetype/src/sfnt/ttpost.c
freetype/src/sfnt/ttpost.h
freetype/src/sfnt/ttsbit.c
freetype/src/sfnt/ttsbit.h
freetype/src/smooth/Jamfile
freetype/src/smooth/ftgrays.c
freetype/src/smooth/ftgrays.h
freetype/src/smooth/ftsmerrs.h
freetype/src/smooth/ftsmooth.c
freetype/src/smooth/ftsmooth.h
freetype/src/smooth/ftspic.c
freetype/src/smooth/ftspic.h
freetype/src/smooth/module.mk
freetype/src/smooth/rules.mk
freetype/src/smooth/smooth.c
freetype/src/tools/Jamfile
freetype/src/tools/afblue.pl
freetype/src/tools/apinames.c
freetype/src/tools/chktrcmp.py
freetype/src/tools/cordic.py
freetype/src/tools/docmaker/content.py
freetype/src/tools/docmaker/docbeauty.py
freetype/src/tools/docmaker/docmaker.py
freetype/src/tools/docmaker/formatter.py
freetype/src/tools/docmaker/sources.py
freetype/src/tools/docmaker/tohtml.py
freetype/src/tools/docmaker/utils.py
freetype/src/tools/ftrandom/Makefile
freetype/src/tools/ftrandom/README
freetype/src/tools/ftrandom/ftrandom.c
freetype/src/tools/glnames.py
freetype/src/tools/test_afm.c
freetype/src/tools/test_bbox.c
freetype/src/tools/test_trig.c
freetype/src/truetype/Jamfile
freetype/src/truetype/module.mk
freetype/src/truetype/rules.mk
freetype/src/truetype/truetype.c
freetype/src/truetype/ttdriver.c
freetype/src/truetype/ttdriver.h
freetype/src/truetype/tterrors.h
freetype/src/truetype/ttgload.c
freetype/src/truetype/ttgload.h
freetype/src/truetype/ttgxvar.c
freetype/src/truetype/ttgxvar.h
freetype/src/truetype/ttinterp.c
freetype/src/truetype/ttinterp.h
freetype/src/truetype/ttobjs.c
freetype/src/truetype/ttobjs.h
freetype/src/truetype/ttpic.c
freetype/src/truetype/ttpic.h
freetype/src/truetype/ttpload.c
freetype/src/truetype/ttpload.h
freetype/src/truetype/ttsubpix.c
freetype/src/truetype/ttsubpix.h
freetype/src/type1/Jamfile
freetype/src/type1/module.mk
freetype/src/type1/rules.mk
freetype/src/type1/t1afm.c
freetype/src/type1/t1afm.h
freetype/src/type1/t1driver.c
freetype/src/type1/t1driver.h
freetype/src/type1/t1errors.h
freetype/src/type1/t1gload.c
freetype/src/type1/t1gload.h
freetype/src/type1/t1load.c
freetype/src/type1/t1load.h
freetype/src/type1/t1objs.c
freetype/src/type1/t1objs.h
freetype/src/type1/t1parse.c
freetype/src/type1/t1parse.h
freetype/src/type1/t1tokens.h
freetype/src/type1/type1.c
freetype/src/type42/Jamfile
freetype/src/type42/module.mk
freetype/src/type42/rules.mk
freetype/src/type42/t42drivr.c
freetype/src/type42/t42drivr.h
freetype/src/type42/t42error.h
freetype/src/type42/t42objs.c
freetype/src/type42/t42objs.h
freetype/src/type42/t42parse.c
freetype/src/type42/t42parse.h
freetype/src/type42/t42types.h
freetype/src/type42/type42.c
freetype/src/winfonts/Jamfile
freetype/src/winfonts/fnterrs.h
freetype/src/winfonts/module.mk
freetype/src/winfonts/rules.mk
freetype/src/winfonts/winfnt.c
freetype/src/winfonts/winfnt.h
freetype/version.sed
freetype/vms_make.com
ghostall.vcproj
ghostpcl.vcproj
ghostpdl.vcproj
ghostscript-ufst.vcproj
ghostscript.vcproj
ghostscript_rt.vcxproj
ghostxps.vcproj
gpdl/gpdl.mak
gpdl/psi/gpdlpsi.mak
gpdl/psi/psitop.c
gpdl/pspcl6_gcc.mak
gpdl/pspcl6_msvc.mak
gs/DroidSansFallback.NOTICE
gs/LICENSE
gs/Makefile.in
gs/Resource/CIDFSubst/DroidSansFallback.ttf
gs/Resource/CIDFont/ArtifexBullet
gs/Resource/CMap/78-EUC-H
gs/Resource/CMap/78-EUC-V
gs/Resource/CMap/78-H
gs/Resource/CMap/78-RKSJ-H
gs/Resource/CMap/78-RKSJ-V
gs/Resource/CMap/78-V
gs/Resource/CMap/78ms-RKSJ-H
gs/Resource/CMap/78ms-RKSJ-V
gs/Resource/CMap/83pv-RKSJ-H
gs/Resource/CMap/90ms-RKSJ-H
gs/Resource/CMap/90ms-RKSJ-V
gs/Resource/CMap/90msp-RKSJ-H
gs/Resource/CMap/90msp-RKSJ-V
gs/Resource/CMap/90pv-RKSJ-H
gs/Resource/CMap/90pv-RKSJ-V
gs/Resource/CMap/Add-H
gs/Resource/CMap/Add-RKSJ-H
gs/Resource/CMap/Add-RKSJ-V
gs/Resource/CMap/Add-V
gs/Resource/CMap/Adobe-CNS1-0
gs/Resource/CMap/Adobe-CNS1-1
gs/Resource/CMap/Adobe-CNS1-2
gs/Resource/CMap/Adobe-CNS1-3
gs/Resource/CMap/Adobe-CNS1-4
gs/Resource/CMap/Adobe-CNS1-5
gs/Resource/CMap/Adobe-CNS1-6
gs/Resource/CMap/Adobe-GB1-0
gs/Resource/CMap/Adobe-GB1-1
gs/Resource/CMap/Adobe-GB1-2
gs/Resource/CMap/Adobe-GB1-3
gs/Resource/CMap/Adobe-GB1-4
gs/Resource/CMap/Adobe-GB1-5
gs/Resource/CMap/Adobe-Japan1-0
gs/Resource/CMap/Adobe-Japan1-1
gs/Resource/CMap/Adobe-Japan1-2
gs/Resource/CMap/Adobe-Japan1-3
gs/Resource/CMap/Adobe-Japan1-4
gs/Resource/CMap/Adobe-Japan1-5
gs/Resource/CMap/Adobe-Japan1-6
gs/Resource/CMap/Adobe-Korea1-0
gs/Resource/CMap/Adobe-Korea1-1
gs/Resource/CMap/Adobe-Korea1-2
gs/Resource/CMap/B5-H
gs/Resource/CMap/B5-V
gs/Resource/CMap/B5pc-H
gs/Resource/CMap/B5pc-V
gs/Resource/CMap/CNS-EUC-H
gs/Resource/CMap/CNS-EUC-V
gs/Resource/CMap/CNS1-H
gs/Resource/CMap/CNS1-V
gs/Resource/CMap/CNS2-H
gs/Resource/CMap/CNS2-V
gs/Resource/CMap/ETHK-B5-H
gs/Resource/CMap/ETHK-B5-V
gs/Resource/CMap/ETen-B5-H
gs/Resource/CMap/ETen-B5-V
gs/Resource/CMap/ETenms-B5-H
gs/Resource/CMap/ETenms-B5-V
gs/Resource/CMap/EUC-H
gs/Resource/CMap/EUC-V
gs/Resource/CMap/Ext-H
gs/Resource/CMap/Ext-RKSJ-H
gs/Resource/CMap/Ext-RKSJ-V
gs/Resource/CMap/Ext-V
gs/Resource/CMap/GB-EUC-H
gs/Resource/CMap/GB-EUC-V
gs/Resource/CMap/GB-H
gs/Resource/CMap/GB-V
gs/Resource/CMap/GBK-EUC-H
gs/Resource/CMap/GBK-EUC-V
gs/Resource/CMap/GBK2K-H
gs/Resource/CMap/GBK2K-V
gs/Resource/CMap/GBKp-EUC-H
gs/Resource/CMap/GBKp-EUC-V
gs/Resource/CMap/GBT-EUC-H
gs/Resource/CMap/GBT-EUC-V
gs/Resource/CMap/GBT-H
gs/Resource/CMap/GBT-V
gs/Resource/CMap/GBTpc-EUC-H
gs/Resource/CMap/GBTpc-EUC-V
gs/Resource/CMap/GBpc-EUC-H
gs/Resource/CMap/GBpc-EUC-V
gs/Resource/CMap/H
gs/Resource/CMap/HKdla-B5-H
gs/Resource/CMap/HKdla-B5-V
gs/Resource/CMap/HKdlb-B5-H
gs/Resource/CMap/HKdlb-B5-V
gs/Resource/CMap/HKgccs-B5-H
gs/Resource/CMap/HKgccs-B5-V
gs/Resource/CMap/HKm314-B5-H
gs/Resource/CMap/HKm314-B5-V
gs/Resource/CMap/HKm471-B5-H
gs/Resource/CMap/HKm471-B5-V
gs/Resource/CMap/HKscs-B5-H
gs/Resource/CMap/HKscs-B5-V
gs/Resource/CMap/Hankaku
gs/Resource/CMap/Hiragana
gs/Resource/CMap/Identity-H
gs/Resource/CMap/Identity-UTF16-H
gs/Resource/CMap/Identity-V
gs/Resource/CMap/KSC-EUC-H
gs/Resource/CMap/KSC-EUC-V
gs/Resource/CMap/KSC-H
gs/Resource/CMap/KSC-Johab-H
gs/Resource/CMap/KSC-Johab-V
gs/Resource/CMap/KSC-V
gs/Resource/CMap/KSCms-UHC-H
gs/Resource/CMap/KSCms-UHC-HW-H
gs/Resource/CMap/KSCms-UHC-HW-V
gs/Resource/CMap/KSCms-UHC-V
gs/Resource/CMap/KSCpc-EUC-H
gs/Resource/CMap/KSCpc-EUC-V
gs/Resource/CMap/Katakana
gs/Resource/CMap/NWP-H
gs/Resource/CMap/NWP-V
gs/Resource/CMap/RKSJ-H
gs/Resource/CMap/RKSJ-V
gs/Resource/CMap/Roman
gs/Resource/CMap/UniCNS-UCS2-H
gs/Resource/CMap/UniCNS-UCS2-V
gs/Resource/CMap/UniCNS-UTF16-H
gs/Resource/CMap/UniCNS-UTF16-V
gs/Resource/CMap/UniCNS-UTF32-H
gs/Resource/CMap/UniCNS-UTF32-V
gs/Resource/CMap/UniCNS-UTF8-H
gs/Resource/CMap/UniCNS-UTF8-V
gs/Resource/CMap/UniGB-UCS2-H
gs/Resource/CMap/UniGB-UCS2-V
gs/Resource/CMap/UniGB-UTF16-H
gs/Resource/CMap/UniGB-UTF16-V
gs/Resource/CMap/UniGB-UTF32-H
gs/Resource/CMap/UniGB-UTF32-V
gs/Resource/CMap/UniGB-UTF8-H
gs/Resource/CMap/UniGB-UTF8-V
gs/Resource/CMap/UniHojo-UCS2-H
gs/Resource/CMap/UniJIS-UCS2-H
gs/Resource/CMap/UniJIS-UCS2-HW-H
gs/Resource/CMap/UniJIS-UCS2-HW-V
gs/Resource/CMap/UniJIS-UCS2-V
gs/Resource/CMap/UniJIS-UTF16-H
gs/Resource/CMap/UniJIS-UTF16-V
gs/Resource/CMap/UniJIS-UTF32-H
gs/Resource/CMap/UniJIS-UTF32-V
gs/Resource/CMap/UniJIS-UTF8-H
gs/Resource/CMap/UniJIS-UTF8-V
gs/Resource/CMap/UniJIS2004-UTF16-H
gs/Resource/CMap/UniJIS2004-UTF16-V
gs/Resource/CMap/UniJIS2004-UTF32-H
gs/Resource/CMap/UniJIS2004-UTF32-V
gs/Resource/CMap/UniJIS2004-UTF8-H
gs/Resource/CMap/UniJIS2004-UTF8-V
gs/Resource/CMap/UniJISPro-UCS2-HW-V
gs/Resource/CMap/UniJISPro-UCS2-V
gs/Resource/CMap/UniJISPro-UTF8-V
gs/Resource/CMap/UniJISX0213-UTF32-H
gs/Resource/CMap/UniJISX0213-UTF32-V
gs/Resource/CMap/UniJISX02132004-UTF32-H
gs/Resource/CMap/UniJISX02132004-UTF32-V
gs/Resource/CMap/UniKS-UCS2-H
gs/Resource/CMap/UniKS-UCS2-V
gs/Resource/CMap/UniKS-UTF16-H
gs/Resource/CMap/UniKS-UTF16-V
gs/Resource/CMap/UniKS-UTF32-H
gs/Resource/CMap/UniKS-UTF32-V
gs/Resource/CMap/UniKS-UTF8-H
gs/Resource/CMap/UniKS-UTF8-V
gs/Resource/CMap/V
gs/Resource/CMap/WP-Symbol
gs/Resource/ColorSpace/DefaultCMYK
gs/Resource/ColorSpace/DefaultGray
gs/Resource/ColorSpace/DefaultRGB
gs/Resource/ColorSpace/TrivialCMYK
gs/Resource/ColorSpace/sGray
gs/Resource/ColorSpace/sRGB
gs/Resource/Decoding/FCO_Dingbats
gs/Resource/Decoding/FCO_Symbol
gs/Resource/Decoding/FCO_Unicode
gs/Resource/Decoding/FCO_Wingdings
gs/Resource/Decoding/Latin1
gs/Resource/Decoding/StandardEncoding
gs/Resource/Decoding/Unicode
gs/Resource/Encoding/CEEncoding
gs/Resource/Encoding/ExpertEncoding
gs/Resource/Encoding/ExpertSubsetEncoding
gs/Resource/Encoding/NotDefEncoding
gs/Resource/Encoding/Wingdings
gs/Resource/Font/BookmanURW-DemBol
gs/Resource/Font/BookmanURW-DemBolIta
gs/Resource/Font/BookmanURW-Lig
gs/Resource/Font/BookmanURW-LigIta
gs/Resource/Font/CenturySchURW-Bol
gs/Resource/Font/CenturySchURW-BolIta
gs/Resource/Font/CenturySchURW-Ita
gs/Resource/Font/CenturySchURW-Rom
gs/Resource/Font/ChanceryURW-MedIta
gs/Resource/Font/Dingbats
gs/Resource/Font/NimbusMono-Bold
gs/Resource/Font/NimbusMono-BoldOblique
gs/Resource/Font/NimbusMono-Oblique
gs/Resource/Font/NimbusMono-Regular
gs/Resource/Font/NimbusRomNo9L-Med
gs/Resource/Font/NimbusRomNo9L-MedIta
gs/Resource/Font/NimbusRomNo9L-Reg
gs/Resource/Font/NimbusRomNo9L-RegIta
gs/Resource/Font/NimbusSanL-Bol
gs/Resource/Font/NimbusSanL-BolIta
gs/Resource/Font/NimbusSanL-Reg
gs/Resource/Font/NimbusSanL-RegIta
gs/Resource/Font/NimbusSanNar-Bol
gs/Resource/Font/NimbusSanNar-BolIta
gs/Resource/Font/NimbusSanNar-Ita
gs/Resource/Font/NimbusSanNar-Reg
gs/Resource/Font/PalladioURW-Bol
gs/Resource/Font/PalladioURW-BolIta
gs/Resource/Font/PalladioURW-Ita
gs/Resource/Font/PalladioURW-Rom
gs/Resource/Font/StandardSymL
gs/Resource/Font/URWGothic-Boo
gs/Resource/Font/URWGothic-BooObl
gs/Resource/Font/URWGothic-Dem
gs/Resource/Font/URWGothic-DemObl
gs/Resource/IdiomSet/Pscript5Idiom
gs/Resource/Init/FAPIcidfmap
gs/Resource/Init/FAPIconfig
gs/Resource/Init/FAPIfontmap
gs/Resource/Init/FCOfontmap-PCLPS2
gs/Resource/Init/Fontmap
gs/Resource/Init/Fontmap.GS
gs/Resource/Init/cidfmap
gs/Resource/Init/gs_agl.ps
gs/Resource/Init/gs_btokn.ps
gs/Resource/Init/gs_cet.ps
gs/Resource/Init/gs_cff.ps
gs/Resource/Init/gs_cidcm.ps
gs/Resource/Init/gs_ciddc.ps
gs/Resource/Init/gs_cidfm.ps
gs/Resource/Init/gs_cidfn.ps
gs/Resource/Init/gs_cidtt.ps
gs/Resource/Init/gs_cmap.ps
gs/Resource/Init/gs_cspace.ps
gs/Resource/Init/gs_css_e.ps
gs/Resource/Init/gs_dbt_e.ps
gs/Resource/Init/gs_diskf.ps
gs/Resource/Init/gs_diskn.ps
gs/Resource/Init/gs_dpnxt.ps
gs/Resource/Init/gs_dps.ps
gs/Resource/Init/gs_dps1.ps
gs/Resource/Init/gs_dps2.ps
gs/Resource/Init/gs_dscp.ps
gs/Resource/Init/gs_epsf.ps
gs/Resource/Init/gs_fapi.ps
gs/Resource/Init/gs_fntem.ps
gs/Resource/Init/gs_fonts.ps
gs/Resource/Init/gs_frsd.ps
gs/Resource/Init/gs_icc.ps
gs/Resource/Init/gs_il1_e.ps
gs/Resource/Init/gs_img.ps
gs/Resource/Init/gs_init.ps
gs/Resource/Init/gs_l2img.ps
gs/Resource/Init/gs_lev2.ps
gs/Resource/Init/gs_ll3.ps
gs/Resource/Init/gs_mex_e.ps
gs/Resource/Init/gs_mgl_e.ps
gs/Resource/Init/gs_mro_e.ps
gs/Resource/Init/gs_pdf_e.ps
gs/Resource/Init/gs_pdfwr.ps
gs/Resource/Init/gs_res.ps
gs/Resource/Init/gs_resmp.ps
gs/Resource/Init/gs_setpd.ps
gs/Resource/Init/gs_statd.ps
gs/Resource/Init/gs_std_e.ps
gs/Resource/Init/gs_sym_e.ps
gs/Resource/Init/gs_trap.ps
gs/Resource/Init/gs_ttf.ps
gs/Resource/Init/gs_typ32.ps
gs/Resource/Init/gs_typ42.ps
gs/Resource/Init/gs_type1.ps
gs/Resource/Init/gs_wan_e.ps
gs/Resource/Init/pdf_base.ps
gs/Resource/Init/pdf_cslayer.ps
gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_font.ps
gs/Resource/Init/pdf_main.ps
gs/Resource/Init/pdf_ops.ps
gs/Resource/Init/pdf_rbld.ps
gs/Resource/Init/pdf_sec.ps
gs/Resource/Init/xlatmap
gs/Resource/SubstCID/CNS1-WMode
gs/Resource/SubstCID/GB1-WMode
gs/Resource/SubstCID/Japan1-WMode
gs/Resource/SubstCID/Korea1-WMode
gs/arch/osx-x86-x86_64-ppc-gcc.h
gs/arch/windows-arm-msvc.h
gs/arch/windows-x64-msvc.h
gs/arch/windows-x86-msvc.h
gs/autogen.sh
gs/base/ConvertUTF.c
gs/base/ConvertUTF.h
gs/base/aes.c
gs/base/aes.h
gs/base/all-arch.mak
gs/base/append_l.com
gs/base/assert_.h
gs/base/bcc32.cfg
gs/base/bench.c
gs/base/catmake
gs/base/copy_one.com
gs/base/cp.bat
gs/base/cp.cmd
gs/base/ctype_.h
gs/base/dirent_.h
gs/base/dos_.h
gs/base/echogs.c
gs/base/errno_.h
gs/base/expat.mak
gs/base/fapi_bs.mak
gs/base/fapi_ft.c
gs/base/fapibstm.c
gs/base/fapiufst.c
gs/base/fcntl_.h
gs/base/freetype.mak
gs/base/gconf.c
gs/base/gconf.h
gs/base/gdbflags.h
gs/base/gdebug.h
gs/base/gdevabuf.c
gs/base/gdevbbox.c
gs/base/gdevbbox.h
gs/base/gdevdbit.c
gs/base/gdevdcrd.c
gs/base/gdevdcrd.h
gs/base/gdevddrw.c
gs/base/gdevddrw.h
gs/base/gdevdevn.c
gs/base/gdevdevn.h
gs/base/gdevdevnprn.h
gs/base/gdevdflt.c
gs/base/gdevdgbr.c
gs/base/gdevdrop.c
gs/base/gdevdsha.c
gs/base/gdevemap.c
gs/base/gdevflp.c
gs/base/gdevflp.h
gs/base/gdevhit.c
gs/base/gdevkrnlsclass.c
gs/base/gdevkrnlsclass.h
gs/base/gdevm1.c
gs/base/gdevm16.c
gs/base/gdevm2.c
gs/base/gdevm24.c
gs/base/gdevm32.c
gs/base/gdevm4.c
gs/base/gdevm40.c
gs/base/gdevm48.c
gs/base/gdevm56.c
gs/base/gdevm64.c
gs/base/gdevm8.c
gs/base/gdevmem.c
gs/base/gdevmem.h
gs/base/gdevmpla.c
gs/base/gdevmpla.h
gs/base/gdevmplt.c
gs/base/gdevmplt.h
gs/base/gdevmr1.c
gs/base/gdevmr2n.c
gs/base/gdevmr8n.c
gs/base/gdevmrop.h
gs/base/gdevmrun.c
gs/base/gdevmrun.h
gs/base/gdevmx.c
gs/base/gdevnfwd.c
gs/base/gdevoflt.c
gs/base/gdevoflt.h
gs/base/gdevp14.c
gs/base/gdevp14.h
gs/base/gdevpccm.c
gs/base/gdevpccm.h
gs/base/gdevpipe.c
gs/base/gdevplnx.c
gs/base/gdevplnx.h
gs/base/gdevppla.c
gs/base/gdevppla.h
gs/base/gdevprn.c
gs/base/gdevprn.h
gs/base/gdevprna.c
gs/base/gdevprna.h
gs/base/gdevpxat.h
gs/base/gdevpxen.h
gs/base/gdevpxop.h
gs/base/gdevrops.c
gs/base/gdevsclass.c
gs/base/gdevsclass.h
gs/base/gdevvec.c
gs/base/gdevvec.h
gs/base/genarch.c
gs/base/genconf.c
gs/base/gendev.c
gs/base/genht.c
gs/base/gp.h
gs/base/gp_dosfe.c
gs/base/gp_dosfs.c
gs/base/gp_dvx.c
gs/base/gp_getnv.c
gs/base/gp_mac.c
gs/base/gp_mac.h
gs/base/gp_macio.c
gs/base/gp_macpoll.c
gs/base/gp_mktmp.c
gs/base/gp_msdll.c
gs/base/gp_msdos.c
gs/base/gp_mshdl.c
gs/base/gp_mslib.c
gs/base/gp_mspol.c
gs/base/gp_msprn.c
gs/base/gp_mswin.c
gs/base/gp_mswin.h
gs/base/gp_nsync.c
gs/base/gp_ntfs.c
gs/base/gp_os2.c
gs/base/gp_os2.h
gs/base/gp_os2fs.c
gs/base/gp_os2pr.c
gs/base/gp_os9.c
gs/base/gp_paper.c
gs/base/gp_psync.c
gs/base/gp_stdia.c
gs/base/gp_stdin.c
gs/base/gp_strdl.c
gs/base/gp_sysv.c
gs/base/gp_unifn.c
gs/base/gp_unifs.c
gs/base/gp_unix.c
gs/base/gp_unix_cache.c
gs/base/gp_upapr.c
gs/base/gp_vms.c
gs/base/gp_wgetv.c
gs/base/gp_win32.c
gs/base/gp_wpapr.c
gs/base/gp_wsync.c
gs/base/gp_wutf8.c
gs/base/gpcheck.h
gs/base/gpgetenv.h
gs/base/gpmisc.c
gs/base/gpmisc.h
gs/base/gpsync.h
gs/base/gs.mak
gs/base/gs_dll_call.h
gs/base/gs_mgl_e.h
gs/base/gs_mro_e.h
gs/base/gsalloc.c
gs/base/gsalloc.h
gs/base/gsalpha.c
gs/base/gsalpha.h
gs/base/gsalphac.c
gs/base/gsalphac.h
gs/base/gsargs.c
gs/base/gsargs.h
gs/base/gsbitcom.c
gs/base/gsbitmap.h
gs/base/gsbitops.c
gs/base/gsbitops.h
gs/base/gsbittab.c
gs/base/gsbittab.h
gs/base/gsccode.h
gs/base/gsccolor.h
gs/base/gscdef.c
gs/base/gscdefs.h
gs/base/gscdevn.c
gs/base/gscdevn.h
gs/base/gscedata.c
gs/base/gscedata.h
gs/base/gscencs.c
gs/base/gscencs.h
gs/base/gschar.c
gs/base/gschar.h
gs/base/gschar0.c
gs/base/gscicach.c
gs/base/gscicach.h
gs/base/gscie.c
gs/base/gscie.h
gs/base/gsciemap.c
gs/base/gscindex.h
gs/base/gsclipsr.c
gs/base/gsclipsr.h
gs/base/gscms.h
gs/base/gscolor.c
gs/base/gscolor.h
gs/base/gscolor1.c
gs/base/gscolor1.h
gs/base/gscolor2.c
gs/base/gscolor2.h
gs/base/gscolor3.c
gs/base/gscolor3.h
gs/base/gscolorbuffer.c
gs/base/gscolorbuffer.h
gs/base/gscompt.h
gs/base/gscoord.c
gs/base/gscoord.h
gs/base/gscparam.c
gs/base/gscpixel.c
gs/base/gscpixel.h
gs/base/gscpm.h
gs/base/gscrd.c
gs/base/gscrd.h
gs/base/gscrdp.c
gs/base/gscrdp.h
gs/base/gscrypt1.c
gs/base/gscrypt1.h
gs/base/gscscie.c
gs/base/gscsel.h
gs/base/gscsepr.c
gs/base/gscsepr.h
gs/base/gscspace.c
gs/base/gscspace.h
gs/base/gscssub.c
gs/base/gscssub.h
gs/base/gsdcolor.h
gs/base/gsdevice.c
gs/base/gsdevice.h
gs/base/gsdevmem.c
gs/base/gsdfilt.c
gs/base/gsdfilt.h
gs/base/gsdll.h
gs/base/gsdllwin.h
gs/base/gsdparam.c
gs/base/gsdpnext.h
gs/base/gsdps.c
gs/base/gsdps.h
gs/base/gsdps1.c
gs/base/gsdsrc.c
gs/base/gsdsrc.h
gs/base/gsequivc.c
gs/base/gsequivc.h
gs/base/gserrors.h
gs/base/gsexit.h
gs/base/gsfcid.c
gs/base/gsfcid2.c
gs/base/gsfcmap.c
gs/base/gsfcmap.h
gs/base/gsfcmap1.c
gs/base/gsflip.c
gs/base/gsflip.h
gs/base/gsfname.c
gs/base/gsfname.h
gs/base/gsfont.c
gs/base/gsfont.h
gs/base/gsfont0.c
gs/base/gsfont0c.c
gs/base/gsform1.h
gs/base/gsfunc.c
gs/base/gsfunc.h
gs/base/gsfunc0.c
gs/base/gsfunc0.h
gs/base/gsfunc3.c
gs/base/gsfunc3.h
gs/base/gsfunc4.c
gs/base/gsfunc4.h
gs/base/gsgc.h
gs/base/gsgcache.c
gs/base/gsgcache.h
gs/base/gsgdata.c
gs/base/gsgdata.h
gs/base/gshsb.c
gs/base/gshsb.h
gs/base/gsht.c
gs/base/gsht.h
gs/base/gsht1.c
gs/base/gsht1.h
gs/base/gshtscr.c
gs/base/gshtx.c
gs/base/gshtx.h
gs/base/gsicc.c
gs/base/gsicc.h
gs/base/gsicc_cache.c
gs/base/gsicc_cache.h
gs/base/gsicc_cms.h
gs/base/gsicc_create.c
gs/base/gsicc_create.h
gs/base/gsicc_lcms.c
gs/base/gsicc_lcms2.c
gs/base/gsicc_manage.c
gs/base/gsicc_manage.h
gs/base/gsicc_monitorcm.c
gs/base/gsicc_nocm.c
gs/base/gsicc_profilecache.c
gs/base/gsicc_profilecache.h
gs/base/gsicc_replacecm.c
gs/base/gsimage.c
gs/base/gsimage.h
gs/base/gsimpath.c
gs/base/gsinit.c
gs/base/gsio.h
gs/base/gsiodev.c
gs/base/gsiodevs.c
gs/base/gsiodisk.c
gs/base/gsiomacres.c
gs/base/gsioram.c
gs/base/gsiorom.c
gs/base/gsiorom.h
gs/base/gsipar3x.h
gs/base/gsiparam.h
gs/base/gsiparm2.h
gs/base/gsiparm3.h
gs/base/gsiparm4.h
gs/base/gsistate.c
gs/base/gsjconf.h
gs/base/gsjmorec.h
gs/base/gslib.c
gs/base/gslib.h
gs/base/gslibctx.c
gs/base/gslibctx.h
gs/base/gsline.c
gs/base/gsline.h
gs/base/gslparam.h
gs/base/gsmalloc.c
gs/base/gsmalloc.h
gs/base/gsmatrix.c
gs/base/gsmatrix.h
gs/base/gsmchunk.c
gs/base/gsmchunk.h
gs/base/gsmd5.c
gs/base/gsmd5.h
gs/base/gsmdebug.h
gs/base/gsmemlok.c
gs/base/gsmemlok.h
gs/base/gsmemory.c
gs/base/gsmemory.h
gs/base/gsmemraw.h
gs/base/gsmemret.c
gs/base/gsmemret.h
gs/base/gsmisc.c
gs/base/gsnamecl.c
gs/base/gsnamecl.h
gs/base/gsncdummy.c
gs/base/gsncdummy.h
gs/base/gsnogc.c
gs/base/gsnogc.h
gs/base/gsnotify.c
gs/base/gsnotify.h
gs/base/gsovrc.c
gs/base/gsovrc.h
gs/base/gspaint.c
gs/base/gspaint.h
gs/base/gsparam.c
gs/base/gsparam.h
gs/base/gsparam2.c
gs/base/gsparams.c
gs/base/gsparams.h
gs/base/gsparamx.c
gs/base/gsparamx.h
gs/base/gspath.c
gs/base/gspath.h
gs/base/gspath1.c
gs/base/gspath2.h
gs/base/gspcolor.c
gs/base/gspcolor.h
gs/base/gspenum.h
gs/base/gspmdrv.c
gs/base/gspmdrv.def
gs/base/gspmdrv.h
gs/base/gspmdrv.icx
gs/base/gspmdrv.rc
gs/base/gsptype1.c
gs/base/gsptype1.h
gs/base/gsptype2.c
gs/base/gsptype2.h
gs/base/gsrect.h
gs/base/gsrefct.h
gs/base/gsromfs0.c
gs/base/gsrop.c
gs/base/gsrop.h
gs/base/gsroprun.c
gs/base/gsroprun1.h
gs/base/gsroprun24.h
gs/base/gsroprun8.h
gs/base/gsropt.h
gs/base/gsroptab.c
gs/base/gsserial.c
gs/base/gsserial.h
gs/base/gsshade.c
gs/base/gsshade.h
gs/base/gssprintf.c
gs/base/gssprintf.h
gs/base/gsstate.c
gs/base/gsstate.h
gs/base/gsstrtok.c
gs/base/gsstrtok.h
gs/base/gsstruct.h
gs/base/gsstype.h
gs/base/gstext.c
gs/base/gstext.h
gs/base/gstiffio.c
gs/base/gstiffio.h
gs/base/gstparam.h
gs/base/gstrans.c
gs/base/gstrans.h
gs/base/gstrap.c
gs/base/gstrap.h
gs/base/gstype1.c
gs/base/gstype1.h
gs/base/gstype2.c
gs/base/gstype42.c
gs/base/gstypes.h
gs/base/gsuid.h
gs/base/gsutil.c
gs/base/gsutil.h
gs/base/gswin.icx
gs/base/gswin.rc
gs/base/gswin16.icx
gs/base/gswin32.rc
gs/base/gsxfont.h
gs/base/gx.h
gs/base/gxacpath.c
gs/base/gxalloc.h
gs/base/gxalpha.h
gs/base/gxarith.h
gs/base/gxband.h
gs/base/gxbcache.c
gs/base/gxbcache.h
gs/base/gxbitfmt.h
gs/base/gxbitmap.h
gs/base/gxbitops.h
gs/base/gxblend.c
gs/base/gxblend.h
gs/base/gxblend1.c
gs/base/gxccache.c
gs/base/gxccman.c
gs/base/gxcdevn.h
gs/base/gxchar.c
gs/base/gxchar.h
gs/base/gxchrout.c
gs/base/gxchrout.h
gs/base/gxcht.c
gs/base/gxcid.h
gs/base/gxcie.h
gs/base/gxcindex.h
gs/base/gxclbits.c
gs/base/gxcldev.h
gs/base/gxclfile.c
gs/base/gxclimag.c
gs/base/gxclio.h
gs/base/gxclip.c
gs/base/gxclip.h
gs/base/gxclip2.c
gs/base/gxclip2.h
gs/base/gxclipm.c
gs/base/gxclipm.h
gs/base/gxclipsr.h
gs/base/gxclist.c
gs/base/gxclist.h
gs/base/gxcllzw.c
gs/base/gxclmem.c
gs/base/gxclmem.h
gs/base/gxclpage.c
gs/base/gxclpage.h
gs/base/gxclpath.c
gs/base/gxclpath.h
gs/base/gxclrast.c
gs/base/gxclread.c
gs/base/gxclrect.c
gs/base/gxclthrd.c
gs/base/gxclthrd.h
gs/base/gxclutil.c
gs/base/gxclzlib.c
gs/base/gxcmap.c
gs/base/gxcmap.h
gs/base/gxcolor2.h
gs/base/gxcomp.h
gs/base/gxcoord.h
gs/base/gxcpath.c
gs/base/gxcpath.h
gs/base/gxcspace.h
gs/base/gxctable.c
gs/base/gxctable.h
gs/base/gxcvalue.h
gs/base/gxdcconv.c
gs/base/gxdcconv.h
gs/base/gxdcolor.c
gs/base/gxdcolor.h
gs/base/gxdda.h
gs/base/gxdevbuf.h
gs/base/gxdevcli.h
gs/base/gxdevice.h
gs/base/gxdevmem.h
gs/base/gxdevndi.c
gs/base/gxdevndi.h
gs/base/gxdevrop.h
gs/base/gxdevsop.h
gs/base/gxdht.h
gs/base/gxdhtres.h
gs/base/gxdhtserial.c
gs/base/gxdhtserial.h
gs/base/gxdither.h
gs/base/gxdownscale.c
gs/base/gxdownscale.h
gs/base/gxdtfill.h
gs/base/gxfapi.c
gs/base/gxfapi.h
gs/base/gxfapiu.c
gs/base/gxfapiu.h
gs/base/gxfarith.h
gs/base/gxfcache.h
gs/base/gxfcid.h
gs/base/gxfcmap.h
gs/base/gxfcmap1.h
gs/base/gxfdrop.c
gs/base/gxfdrop.h
gs/base/gxfill.c
gs/base/gxfill.h
gs/base/gxfillsl.h
gs/base/gxfilltr.h
gs/base/gxfillts.h
gs/base/gxfixed.h
gs/base/gxfmap.h
gs/base/gxfont.h
gs/base/gxfont0.h
gs/base/gxfont0c.h
gs/base/gxfont1.h
gs/base/gxfont42.h
gs/base/gxfrac.h
gs/base/gxftype.h
gs/base/gxfunc.h
gs/base/gxgetbit.h
gs/base/gxhintn.c
gs/base/gxhintn.h
gs/base/gxhintn1.c
gs/base/gxhldevc.c
gs/base/gxhldevc.h
gs/base/gxht.c
gs/base/gxht.h
gs/base/gxht_thresh.c
gs/base/gxht_thresh.h
gs/base/gxhtbit.c
gs/base/gxhttile.h
gs/base/gxhttype.h
gs/base/gxi12bit.c
gs/base/gxi16bit.c
gs/base/gxiclass.h
gs/base/gxicolor.c
gs/base/gxidata.c
gs/base/gxifast.c
gs/base/gximag3x.c
gs/base/gximag3x.h
gs/base/gximage.c
gs/base/gximage.h
gs/base/gximage1.c
gs/base/gximage2.c
gs/base/gximage3.c
gs/base/gximage3.h
gs/base/gximage4.c
gs/base/gximask.c
gs/base/gximask.h
gs/base/gximdecode.c
gs/base/gximdecode.h
gs/base/gximono.c
gs/base/gxino12b.c
gs/base/gxino16b.c
gs/base/gxiodev.h
gs/base/gxiparam.h
gs/base/gxipixel.c
gs/base/gxiscale.c
gs/base/gxistate.h
gs/base/gxline.h
gs/base/gxlum.h
gs/base/gxmatrix.h
gs/base/gxmclip.c
gs/base/gxmclip.h
gs/base/gxobj.h
gs/base/gxoprect.c
gs/base/gxoprect.h
gs/base/gxp1fill.c
gs/base/gxp1impl.h
gs/base/gxpageq.c
gs/base/gxpageq.h
gs/base/gxpaint.c
gs/base/gxpaint.h
gs/base/gxpath.c
gs/base/gxpath.h
gs/base/gxpath2.c
gs/base/gxpcache.h
gs/base/gxpcmap.c
gs/base/gxpcolor.h
gs/base/gxpcopy.c
gs/base/gxpdash.c
gs/base/gxpflat.c
gs/base/gxrplane.h
gs/base/gxsample.c
gs/base/gxsample.h
gs/base/gxsamplp.h
gs/base/gxshade.c
gs/base/gxshade.h
gs/base/gxshade1.c
gs/base/gxshade4.c
gs/base/gxshade4.h
gs/base/gxshade6.c
gs/base/gxstate.h
gs/base/gxstdio.h
gs/base/gxstroke.c
gs/base/gxsync.c
gs/base/gxsync.h
gs/base/gxtext.h
gs/base/gxtmap.h
gs/base/gxttf.h
gs/base/gxttfb.c
gs/base/gxttfb.h
gs/base/gxtype1.c
gs/base/gxtype1.h
gs/base/gxxfont.h
gs/base/gzacpath.h
gs/base/gzcpath.h
gs/base/gzht.h
gs/base/gzline.h
gs/base/gzpath.h
gs/base/gzspotan.c
gs/base/gzspotan.h
gs/base/gzstate.h
gs/base/icc34.h
gs/base/ijs.mak
gs/base/instcopy
gs/base/jbig2.mak
gs/base/jerror_.h
gs/base/jmemcust.c
gs/base/jmemcust.h
gs/base/jpeg.mak
gs/base/jpegxr.mak
gs/base/lcms2.mak
gs/base/lcups.mak
gs/base/lcupsi.mak
gs/base/ldf_jb2.mak
gs/base/lib.mak
gs/base/locale_.h
gs/base/lwf_jp2.mak
gs/base/macgenmcpxml.sh
gs/base/macos-mcp.mak
gs/base/macos_carbon_d_pre.h
gs/base/macos_carbon_pre.h
gs/base/macos_classic_d_pre.h
gs/base/macosx.mak
gs/base/macsystypes.h
gs/base/malloc_.h
gs/base/math_.h
gs/base/md5main.c
gs/base/memento.c
gs/base/memento.h
gs/base/memory_.h
gs/base/mkromfs.c
gs/base/msvccmd.mak
gs/base/msvclib.mak
gs/base/msvctail.mak
gs/base/mv.bat
gs/base/mv.cmd
gs/base/openjpeg.mak
gs/base/openvms.mak
gs/base/openvms.mmk
gs/base/pcwin.mak
gs/base/pipe_.h
gs/base/png.mak
gs/base/png_.h
gs/base/ramfs.c
gs/base/ramfs.h
gs/base/rm.bat
gs/base/rm.cmd
gs/base/rm_all.com
gs/base/rm_one.com
gs/base/sa85d.c
gs/base/sa85d.h
gs/base/sa85x.h
gs/base/saes.c
gs/base/saes.h
gs/base/sarc4.c
gs/base/sarc4.h
gs/base/sbcp.c
gs/base/sbcp.h
gs/base/sbtx.h
gs/base/scanchar.h
gs/base/scantab.c
gs/base/scf.h
gs/base/scfd.c
gs/base/scfdgen.c
gs/base/scfdtab.c
gs/base/scfe.c
gs/base/scfetab.c
gs/base/scfparam.c
gs/base/scfx.h
gs/base/scommon.h
gs/base/sdcparam.c
gs/base/sdcparam.h
gs/base/sdct.h
gs/base/sdctc.c
gs/base/sdctd.c
gs/base/sdcte.c
gs/base/sddparam.c
gs/base/sdeparam.c
gs/base/seexec.c
gs/base/setjmp_.h
gs/base/sfilter.h
gs/base/sfilter2.c
gs/base/sfxboth.c
gs/base/sfxcommon.c
gs/base/sfxfd.c
gs/base/sfxstdio.c
gs/base/sha2.c
gs/base/sha2.h
gs/base/shc.c
gs/base/shc.h
gs/base/sidscale.c
gs/base/sidscale.h
gs/base/siinterp.c
gs/base/siinterp.h
gs/base/simscale.c
gs/base/simscale.h
gs/base/siscale.c
gs/base/siscale.h
gs/base/sisparam.h
gs/base/sjbig2.c
gs/base/sjbig2.h
gs/base/sjbig2_luratech.c
gs/base/sjbig2_luratech.h
gs/base/sjpeg.h
gs/base/sjpegc.c
gs/base/sjpegd.c
gs/base/sjpege.c
gs/base/sjpx_luratech.c
gs/base/sjpx_luratech.h
gs/base/sjpx_openjpeg.c
gs/base/sjpx_openjpeg.h
gs/base/slzwc.c
gs/base/slzwd.c
gs/base/slzwe.c
gs/base/slzwx.h
gs/base/smd5.c
gs/base/smd5.h
gs/base/smtf.c
gs/base/smtf.h
gs/base/spdiff.c
gs/base/spdiffx.h
gs/base/spngp.c
gs/base/spngpx.h
gs/base/spprint.c
gs/base/spprint.h
gs/base/spsdf.c
gs/base/spsdf.h
gs/base/srdline.h
gs/base/srld.c
gs/base/srle.c
gs/base/srlx.h
gs/base/ssha2.c
gs/base/ssha2.h
gs/base/sstring.c
gs/base/sstring.h
gs/base/stat_.h
gs/base/std.h
gs/base/stdint_.h
gs/base/stdio_.h
gs/base/stdpn.h
gs/base/stdpre.h
gs/base/stream.c
gs/base/stream.h
gs/base/strimpl.h
gs/base/string_.h
gs/base/strmio.c
gs/base/strmio.h
gs/base/stub.mak
gs/base/szlibc.c
gs/base/szlibd.c
gs/base/szlibe.c
gs/base/szlibx.h
gs/base/szlibxx.h
gs/base/tiff.mak
gs/base/time_.h
gs/base/ttcalc.c
gs/base/ttcalc.h
gs/base/ttcommon.h
gs/base/ttconf.h
gs/base/ttconfig.h
gs/base/ttfinp.c
gs/base/ttfinp.h
gs/base/ttfmain.c
gs/base/ttfmemd.c
gs/base/ttfmemd.h
gs/base/ttfoutl.h
gs/base/ttfsfnt.h
gs/base/ttinterp.c
gs/base/ttinterp.h
gs/base/ttload.c
gs/base/ttload.h
gs/base/ttmisc.h
gs/base/ttobjs.c
gs/base/ttobjs.h
gs/base/tttables.h
gs/base/tttype.h
gs/base/tttypes.h
gs/base/ugcclib.mak
gs/base/unistd_.h
gs/base/unix-aux.mak
gs/base/unix-dll.mak
gs/base/unix-end.mak
gs/base/unix-gcc.mak
gs/base/unixansi.mak
gs/base/unixhead.mak
gs/base/unixinst.mak
gs/base/unixlink.mak
gs/base/valgrind.h
gs/base/vdtrace.c
gs/base/vdtrace.h
gs/base/version.mak
gs/base/vms_x_fix.h
gs/base/vmsmath.h
gs/base/windows_.h
gs/base/winlib.mak
gs/base/winplat.mak
gs/base/winrtsup.cpp
gs/base/winrtsup.h
gs/base/wrfont.c
gs/base/wrfont.h
gs/base/write_t1.c
gs/base/write_t1.h
gs/base/write_t2.c
gs/base/write_t2.h
gs/base/x_.h
gs/base/xpsprint.cpp
gs/base/zlib.mak
gs/configure.ac
gs/contrib/chp2200/AUTHORS
gs/contrib/chp2200/COPYING
gs/contrib/chp2200/INSTALL
gs/contrib/contrib.mak
gs/contrib/defs.h
gs/contrib/eplaser/gdevescv.c
gs/contrib/eplaser/gdevescv.h
gs/contrib/epson740/README
gs/contrib/epson740/printerdb_rh5.2
gs/contrib/epson740/printerdb_rh6.0
gs/contrib/epson740/ps-to-printer.fpi_rh5.2
gs/contrib/epson740/upp-HowTo-to-be
gs/contrib/gdevbjc_.c
gs/contrib/gdevbjc_.h
gs/contrib/gdevbjca.c
gs/contrib/gdevcd8.c
gs/contrib/gdevcd8.h
gs/contrib/gdevdj9.c
gs/contrib/gdevgdi.c
gs/contrib/gdevhl12.c
gs/contrib/gdevln03.c
gs/contrib/gdevlx32.c
gs/contrib/gdevlx7.c
gs/contrib/gdevmd2k.c
gs/contrib/gdevop4w.c
gs/contrib/gdevxes.c
gs/contrib/gomni.c
gs/contrib/japanese/dmp_init.ps
gs/contrib/japanese/dmp_site.ps
gs/contrib/japanese/doc/Gdevlips.htm
gs/contrib/japanese/doc/README.gs550j
gs/contrib/japanese/doc/cdj880.txt
gs/contrib/japanese/doc/dj505j.txt
gs/contrib/japanese/doc/djgpp.txt
gs/contrib/japanese/doc/gdev10v.txt
gs/contrib/japanese/doc/gdevalps.txt
gs/contrib/japanese/doc/gdevcd8.txt
gs/contrib/japanese/doc/gdevdmpr.txt
gs/contrib/japanese/doc/gdevfmlbp.txt
gs/contrib/japanese/doc/gdevj100.txt
gs/contrib/japanese/doc/gdevlbp3.txt
gs/contrib/japanese/doc/gdevmag.txt
gs/contrib/japanese/doc/gdevmd2k.txt
gs/contrib/japanese/doc/gdevmjc.txt
gs/contrib/japanese/doc/gdevml6.txt
gs/contrib/japanese/doc/gdevp201.txt
gs/contrib/japanese/doc/gs261j.euc
gs/contrib/japanese/doc/gs261j.txt
gs/contrib/japanese/dviprlib.c
gs/contrib/japanese/dviprlib.h
gs/contrib/japanese/escp_24.src
gs/contrib/japanese/gdev10v.c
gs/contrib/japanese/gdevalps.c
gs/contrib/japanese/gdevdmpr.c
gs/contrib/japanese/gdevespg.c
gs/contrib/japanese/gdevfmlbp.c
gs/contrib/japanese/gdevfmpr.c
gs/contrib/japanese/gdevj100.c
gs/contrib/japanese/gdevlbp3.c
gs/contrib/japanese/gdevmag.c
gs/contrib/japanese/gdevmjc.c
gs/contrib/japanese/gdevmjc.h
gs/contrib/japanese/gdevml6.c
gs/contrib/japanese/gdevnpdl.c
gs/contrib/japanese/gdevp201.c
gs/contrib/japanese/gdevrpdl.c
gs/contrib/lips4/gdevl4r.c
gs/contrib/lips4/gdevl4v.c
gs/contrib/lips4/gdevlips.c
gs/contrib/lips4/gdevlips.h
gs/contrib/lips4/gdevlprn.c
gs/contrib/lips4/gdevlprn.h
gs/contrib/lxm3200-tweaked/LICENSE
gs/contrib/lxm3200-tweaked/README
gs/contrib/lxm3200-tweaked/RELEASE_NOTES
gs/contrib/lxm3200-tweaked/Z12-Z31-QuickSetup
gs/contrib/md2k_md5k/README.jis
gs/contrib/opvp/gdevopvp.c
gs/contrib/opvp/opvp.h
gs/contrib/opvp/opvp_0_2_0.h
gs/contrib/opvp/opvp_common.h
gs/contrib/opvp/opvp_media.def
gs/contrib/pcl3/BUGS
gs/contrib/pcl3/LGPL
gs/contrib/pcl3/NEWS
gs/contrib/pcl3/README
gs/contrib/pcl3/doc/gs-mods.txt
gs/contrib/pcl3/doc/gs-pcl3.1
gs/contrib/pcl3/doc/gs-pcl3.html
gs/contrib/pcl3/doc/gs-pcl3.ref
gs/contrib/pcl3/doc/how-to-report.txt
gs/contrib/pcl3/doc/notes.bbl
gs/contrib/pcl3/doc/notes.tex
gs/contrib/pcl3/doc/pcl3opts.1
gs/contrib/pcl3/doc/pcl3opts.html
gs/contrib/pcl3/doc/pcl3opts.ref
gs/contrib/pcl3/doc/reports.txt
gs/contrib/pcl3/eprn/eprnfs.c
gs/contrib/pcl3/eprn/eprnparm.c
gs/contrib/pcl3/eprn/eprnrend.c
gs/contrib/pcl3/eprn/gdeveprn.c
gs/contrib/pcl3/eprn/gdeveprn.h
gs/contrib/pcl3/eprn/mediasize.c
gs/contrib/pcl3/eprn/mediasize.h
gs/contrib/pcl3/eprn/pagecount.c
gs/contrib/pcl3/eprn/pagecount.h
gs/contrib/pcl3/lib/cups-pcl3
gs/contrib/pcl3/lib/example.mcf
gs/contrib/pcl3/lib/if-pcl3
gs/contrib/pcl3/pcl3.tar.sig
gs/contrib/pcl3/ppd/README
gs/contrib/pcl3/ppd/catppd
gs/contrib/pcl3/ppd/fonts.ppd
gs/contrib/pcl3/ppd/gs-5.50.ppd
gs/contrib/pcl3/ppd/gs-6.01.ppd
gs/contrib/pcl3/ppd/gs-6.50.ppd
gs/contrib/pcl3/ppd/gs-6.51.ppd
gs/contrib/pcl3/ppd/gs-7.00.ppd
gs/contrib/pcl3/ppd/gs-common.ppd
gs/contrib/pcl3/ppd/gs-pcl3-common.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj1120c.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj3xx.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj400.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj500.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj500c.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj510.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj540.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj550c.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj600.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj660c.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj680c.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdj8xxc.ppd
gs/contrib/pcl3/ppd/gs-pcl3-hpdjportable.ppd
gs/contrib/pcl3/ppd/gs-pcl3-unspec.ppd
gs/contrib/pcl3/ppd/gs-pcl3-unspecold.ppd
gs/contrib/pcl3/ps/calign.ps
gs/contrib/pcl3/ps/dumppdd.ps
gs/contrib/pcl3/ps/levels-test.ps
gs/contrib/pcl3/ps/margins-A4.ps
gs/contrib/pcl3/ps/margins-A4Rotated.ps
gs/contrib/pcl3/ps/margins-Env10Rotated.ps
gs/contrib/pcl3/ps/margins-EnvDLRotated.ps
gs/contrib/pcl3/ps/margins-Letter.ps
gs/contrib/pcl3/ps/margins-LetterRotated.ps
gs/contrib/pcl3/src/contrib.mak-5.50.add
gs/contrib/pcl3/src/contrib.mak-6.01.add
gs/contrib/pcl3/src/contrib.mak-6.50.add
gs/contrib/pcl3/src/contrib.mak-6.51.add
gs/contrib/pcl3/src/contrib.mak-7.00.add
gs/contrib/pcl3/src/gdevpcl3.c
gs/contrib/pcl3/src/pcl3opts-de.msg
gs/contrib/pcl3/src/pcl3opts-en.msg
gs/contrib/pcl3/src/pcl3opts.c
gs/contrib/pcl3/src/pclcap.c
gs/contrib/pcl3/src/pclcap.h
gs/contrib/pcl3/src/pclcomp.c
gs/contrib/pcl3/src/pclgen.c
gs/contrib/pcl3/src/pclgen.h
gs/contrib/pcl3/src/pclscan.c
gs/contrib/pcl3/src/pclscan.h
gs/contrib/pcl3/src/pclsize.c
gs/contrib/pcl3/src/pclsize.h
gs/contrib/pcl3/src/zmedia2.c-5.50.diff
gs/contrib/pcl3/src/zmedia2.c-6.01.diff
gs/contrib/pcl3/src/zmedia2.c-6.50.diff
gs/contrib/pcl3/src/zmedia2.c-6.51.diff
gs/contrib/pcl3/src/zmedia2.c-7.00.diff
gs/contrib/pscolor/Makefile
gs/contrib/pscolor/black.pdf
gs/contrib/pscolor/black.ps
gs/contrib/pscolor/color.pdf
gs/contrib/pscolor/color.ps
gs/contrib/pscolor/colorsplit.vcproj
gs/contrib/pscolor/common.mak
gs/contrib/pscolor/input.ps
gs/contrib/pscolor/instream.yy
gs/contrib/pscolor/test.c
gs/contrib/pscolor/windows.mak
gs/contrib/uniprint/PM760p.upp
gs/contrib/uniprint/PM760pl.upp
gs/contrib/uniprint/PM820p.upp
gs/contrib/uniprint/PM820pl.upp
gs/contrib/uniprint/Stc670p.upp
gs/contrib/uniprint/Stc670pl.upp
gs/contrib/uniprint/Stc680p.upp
gs/contrib/uniprint/Stc680pl.upp
gs/contrib/uniprint/Stc740p.upp
gs/contrib/uniprint/Stc740pl.upp
gs/contrib/uniprint/Stc760p.upp
gs/contrib/uniprint/Stc760pl.upp
gs/contrib/uniprint/Stc777p.upp
gs/contrib/uniprint/Stc777pl.upp
gs/contrib/uniprint/Stp720p.upp
gs/contrib/uniprint/Stp720pl.upp
gs/contrib/uniprint/Stp870p.upp
gs/contrib/uniprint/Stp870pl.upp
gs/contrib/uniprint/bjc6000a1.upp
gs/contrib/uniprint/bjc6000b1.upp
gs/contrib/uniprint/s400a1.upp
gs/contrib/uniprint/s400b1.upp
gs/contrib/uniprint/sharp.upp
gs/contrib/uniprint/sipixa6.upp
gs/contrib/uniprint/stc740ih.upp
gs/cups/cups.mak
gs/cups/gdevcups.c
gs/cups/libs/Makedefs
gs/cups/libs/configlinux.h
gs/cups/libs/configwin.h
gs/cups/libs/cups/Dependencies
gs/cups/libs/cups/Makefile
gs/cups/libs/cups/adminutil.c
gs/cups/libs/cups/adminutil.h
gs/cups/libs/cups/api-array.header
gs/cups/libs/cups/api-array.shtml
gs/cups/libs/cups/api-cups.header
gs/cups/libs/cups/api-cups.shtml
gs/cups/libs/cups/api-filedir.header
gs/cups/libs/cups/api-filedir.shtml
gs/cups/libs/cups/api-filter.header
gs/cups/libs/cups/api-filter.shtml
gs/cups/libs/cups/api-httpipp.header
gs/cups/libs/cups/api-httpipp.shtml
gs/cups/libs/cups/api-overview.header
gs/cups/libs/cups/api-overview.shtml
gs/cups/libs/cups/api-ppd.header
gs/cups/libs/cups/api-ppd.shtml
gs/cups/libs/cups/array-private.h
gs/cups/libs/cups/array.c
gs/cups/libs/cups/array.h
gs/cups/libs/cups/attr.c
gs/cups/libs/cups/auth.c
gs/cups/libs/cups/backchannel.c
gs/cups/libs/cups/backend.c
gs/cups/libs/cups/backend.h
gs/cups/libs/cups/conflicts.c
gs/cups/libs/cups/cups-private.h
gs/cups/libs/cups/cups.h
gs/cups/libs/cups/custom.c
gs/cups/libs/cups/debug-private.h
gs/cups/libs/cups/debug.c
gs/cups/libs/cups/dest-job.c
gs/cups/libs/cups/dest-localization.c
gs/cups/libs/cups/dest-options.c
gs/cups/libs/cups/dest.c
gs/cups/libs/cups/dir.c
gs/cups/libs/cups/dir.h
gs/cups/libs/cups/emit.c
gs/cups/libs/cups/encode.c
gs/cups/libs/cups/file-private.h
gs/cups/libs/cups/file.c
gs/cups/libs/cups/file.h
gs/cups/libs/cups/getdevices.c
gs/cups/libs/cups/getifaddrs.c
gs/cups/libs/cups/getputfile.c
gs/cups/libs/cups/globals.c
gs/cups/libs/cups/http-addr.c
gs/cups/libs/cups/http-addrlist.c
gs/cups/libs/cups/http-private.h
gs/cups/libs/cups/http-support.c
gs/cups/libs/cups/http.c
gs/cups/libs/cups/http.h
gs/cups/libs/cups/ipp-private.h
gs/cups/libs/cups/ipp-support.c
gs/cups/libs/cups/ipp.c
gs/cups/libs/cups/ipp.h
gs/cups/libs/cups/langprintf.c
gs/cups/libs/cups/language-private.h
gs/cups/libs/cups/language.c
gs/cups/libs/cups/language.h
gs/cups/libs/cups/libcups2.def
gs/cups/libs/cups/libcups2.rc
gs/cups/libs/cups/libcups_s.exp
gs/cups/libs/cups/localize.c
gs/cups/libs/cups/mark.c
gs/cups/libs/cups/md5-private.h
gs/cups/libs/cups/md5.c
gs/cups/libs/cups/md5passwd.c
gs/cups/libs/cups/notify.c
gs/cups/libs/cups/options.c
gs/cups/libs/cups/page.c
gs/cups/libs/cups/ppd-cache.c
gs/cups/libs/cups/ppd-private.h
gs/cups/libs/cups/ppd.c
gs/cups/libs/cups/ppd.h
gs/cups/libs/cups/pwg-media.c
gs/cups/libs/cups/pwg-private.h
gs/cups/libs/cups/pwg.h
gs/cups/libs/cups/raster-private.h
gs/cups/libs/cups/raster.h
gs/cups/libs/cups/request.c
gs/cups/libs/cups/sidechannel.c
gs/cups/libs/cups/sidechannel.h
gs/cups/libs/cups/snmp-private.h
gs/cups/libs/cups/snmp.c
gs/cups/libs/cups/snprintf.c
gs/cups/libs/cups/sspi-private.h
gs/cups/libs/cups/sspi.c
gs/cups/libs/cups/string-private.h
gs/cups/libs/cups/string.c
gs/cups/libs/cups/tempfile.c
gs/cups/libs/cups/test.ppd
gs/cups/libs/cups/test2.ppd
gs/cups/libs/cups/testadmin.c
gs/cups/libs/cups/testarray.c
gs/cups/libs/cups/testconflicts.c
gs/cups/libs/cups/testcups.c
gs/cups/libs/cups/testfile.c
gs/cups/libs/cups/testhttp.c
gs/cups/libs/cups/testi18n.c
gs/cups/libs/cups/testipp.c
gs/cups/libs/cups/testlang.c
gs/cups/libs/cups/testoptions.c
gs/cups/libs/cups/testppd.c
gs/cups/libs/cups/testpwg.c
gs/cups/libs/cups/testsnmp.c
gs/cups/libs/cups/thread-private.h
gs/cups/libs/cups/thread.c
gs/cups/libs/cups/transcode.c
gs/cups/libs/cups/transcode.h
gs/cups/libs/cups/usersys.c
gs/cups/libs/cups/utf8demo.txt
gs/cups/libs/cups/util.c
gs/cups/libs/cups/versioning.h
gs/cups/libs/filter/Dependencies
gs/cups/libs/filter/Makefile
gs/cups/libs/filter/api-raster.header
gs/cups/libs/filter/api-raster.shtml
gs/cups/libs/filter/commandtops.c
gs/cups/libs/filter/common.c
gs/cups/libs/filter/common.h
gs/cups/libs/filter/error.c
gs/cups/libs/filter/gziptoany.c
gs/cups/libs/filter/interpret.c
gs/cups/libs/filter/libcupsimage2.def
gs/cups/libs/filter/libcupsimage_s.exp
gs/cups/libs/filter/postscript-driver.header
gs/cups/libs/filter/postscript-driver.shtml
gs/cups/libs/filter/ppd-compiler.header
gs/cups/libs/filter/ppd-compiler.shtml
gs/cups/libs/filter/pstops.c
gs/cups/libs/filter/raster-driver.header
gs/cups/libs/filter/raster-driver.shtml
gs/cups/libs/filter/raster.c
gs/cups/libs/filter/rasterbench.c
gs/cups/libs/filter/rastertoepson.c
gs/cups/libs/filter/rastertohp.c
gs/cups/libs/filter/rastertolabel.c
gs/cups/libs/filter/rastertopwg.c
gs/cups/libs/filter/spec-ppd.header
gs/cups/libs/filter/spec-ppd.shtml
gs/cups/libs/filter/testraster.c
gs/devices/contrib.mak
gs/devices/devs.mak
gs/devices/gdev3852.c
gs/devices/gdev3b1.c
gs/devices/gdev4081.c
gs/devices/gdev4693.c
gs/devices/gdev8510.c
gs/devices/gdev8bcm.c
gs/devices/gdev8bcm.h
gs/devices/gdevadmp.c
gs/devices/gdevatx.c
gs/devices/gdevbit.c
gs/devices/gdevbj10.c
gs/devices/gdevbjc.h
gs/devices/gdevbjcl.c
gs/devices/gdevbjcl.h
gs/devices/gdevbmp.c
gs/devices/gdevbmp.h
gs/devices/gdevbmpa.c
gs/devices/gdevbmpc.c
gs/devices/gdevccr.c
gs/devices/gdevcdj.c
gs/devices/gdevcfax.c
gs/devices/gdevcif.c
gs/devices/gdevclj.c
gs/devices/gdevcljc.c
gs/devices/gdevcmykog.c
gs/devices/gdevcp50.c
gs/devices/gdevcslw.c
gs/devices/gdevdfax.c
gs/devices/gdevdjet.c
gs/devices/gdevdjtc.c
gs/devices/gdevdljm.c
gs/devices/gdevdljm.h
gs/devices/gdevdm24.c
gs/devices/gdevdsp.c
gs/devices/gdevdsp.h
gs/devices/gdevdsp2.h
gs/devices/gdevepsc.c
gs/devices/gdevepsn.c
gs/devices/gdevescp.c
gs/devices/gdevevga.c
gs/devices/gdevfax.c
gs/devices/gdevfax.h
gs/devices/gdevfpng.c
gs/devices/gdevherc.c
gs/devices/gdevhl7x.c
gs/devices/gdevicov.c
gs/devices/gdevifno.c
gs/devices/gdevijs.c
gs/devices/gdevimgn.c
gs/devices/gdevjbig2.c
gs/devices/gdevjpeg.c
gs/devices/gdevjpx.c
gs/devices/gdevl256.c
gs/devices/gdevl31s.c
gs/devices/gdevlbp8.c
gs/devices/gdevlj56.c
gs/devices/gdevlp8k.c
gs/devices/gdevlxm.c
gs/devices/gdevmac.c
gs/devices/gdevmac.h
gs/devices/gdevmacpictop.h
gs/devices/gdevmacttf.h
gs/devices/gdevmeds.c
gs/devices/gdevmeds.h
gs/devices/gdevmgr.c
gs/devices/gdevmgr.h
gs/devices/gdevmiff.c
gs/devices/gdevmswn.c
gs/devices/gdevmswn.h
gs/devices/gdevmsxf.c
gs/devices/gdevn533.c
gs/devices/gdevo182.c
gs/devices/gdevokii.c
gs/devices/gdevos2p.c
gs/devices/gdevp2up.c
gs/devices/gdevpbm.c
gs/devices/gdevpcfb.c
gs/devices/gdevpcfb.h
gs/devices/gdevpcl.c
gs/devices/gdevpcl.h
gs/devices/gdevpcx.c
gs/devices/gdevpe.c
gs/devices/gdevperm.c
gs/devices/gdevphex.c
gs/devices/gdevpjet.c
gs/devices/gdevplan.c
gs/devices/gdevplib.c
gs/devices/gdevplib.h
gs/devices/gdevpm.h
gs/devices/gdevpng.c
gs/devices/gdevpsd.c
gs/devices/gdevpsim.c
gs/devices/gdevpxut.c
gs/devices/gdevpxut.h
gs/devices/gdevrinkj.c
gs/devices/gdevs3ga.c
gs/devices/gdevsco.c
gs/devices/gdevsgi.c
gs/devices/gdevsgi.h
gs/devices/gdevsj48.c
gs/devices/gdevsnfb.c
gs/devices/gdevsppr.c
gs/devices/gdevstc.c
gs/devices/gdevstc.h
gs/devices/gdevstc1.c
gs/devices/gdevstc2.c
gs/devices/gdevstc3.c
gs/devices/gdevstc4.c
gs/devices/gdevsun.c
gs/devices/gdevsunr.c
gs/devices/gdevsvga.c
gs/devices/gdevsvga.h
gs/devices/gdevtfax.c
gs/devices/gdevtfax.h
gs/devices/gdevtfnx.c
gs/devices/gdevtifs.c
gs/devices/gdevtifs.h
gs/devices/gdevtknk.c
gs/devices/gdevtrac.c
gs/devices/gdevtsep.c
gs/devices/gdevupd.c
gs/devices/gdevvglb.c
gs/devices/gdevwddb.c
gs/devices/gdevwdib.c
gs/devices/gdevwpr2.c
gs/devices/gdevwprn.c
gs/devices/gdevx.c
gs/devices/gdevx.h
gs/devices/gdevxalt.c
gs/devices/gdevxcf.c
gs/devices/gdevxcmp.c
gs/devices/gdevxcmp.h
gs/devices/gdevxini.c
gs/devices/gdevxres.c
gs/devices/gxfcopy.c
gs/devices/gxfcopy.h
gs/devices/minftrsz.c
gs/devices/minftrsz.h
gs/devices/rinkj/evenbetter-rll.c
gs/devices/rinkj/evenbetter-rll.h
gs/devices/rinkj/rinkj-byte-stream.c
gs/devices/rinkj/rinkj-byte-stream.h
gs/devices/rinkj/rinkj-config.c
gs/devices/rinkj/rinkj-config.h
gs/devices/rinkj/rinkj-device.c
gs/devices/rinkj/rinkj-device.h
gs/devices/rinkj/rinkj-dither.c
gs/devices/rinkj/rinkj-dither.h
gs/devices/rinkj/rinkj-epson870.c
gs/devices/rinkj/rinkj-epson870.h
gs/devices/rinkj/rinkj-screen-eb.c
gs/devices/rinkj/rinkj-screen-eb.h
gs/devices/vector/gdevagl.c
gs/devices/vector/gdevagl.h
gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.c
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfc.c
gs/devices/vector/gdevpdfc.h
gs/devices/vector/gdevpdfd.c
gs/devices/vector/gdevpdfe.c
gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfg.h
gs/devices/vector/gdevpdfi.c
gs/devices/vector/gdevpdfj.c
gs/devices/vector/gdevpdfk.c
gs/devices/vector/gdevpdfm.c
gs/devices/vector/gdevpdfo.c
gs/devices/vector/gdevpdfo.h
gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpdfr.c
gs/devices/vector/gdevpdft.c
gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdfv.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdt.c
gs/devices/vector/gdevpdt.h
gs/devices/vector/gdevpdtb.c
gs/devices/vector/gdevpdtb.h
gs/devices/vector/gdevpdtc.c
gs/devices/vector/gdevpdtd.c
gs/devices/vector/gdevpdtd.h
gs/devices/vector/gdevpdte.c
gs/devices/vector/gdevpdtf.c
gs/devices/vector/gdevpdtf.h
gs/devices/vector/gdevpdti.c
gs/devices/vector/gdevpdti.h
gs/devices/vector/gdevpdts.c
gs/devices/vector/gdevpdts.h
gs/devices/vector/gdevpdtt.c
gs/devices/vector/gdevpdtt.h
gs/devices/vector/gdevpdtv.c
gs/devices/vector/gdevpdtv.h
gs/devices/vector/gdevpdtw.c
gs/devices/vector/gdevpdtw.h
gs/devices/vector/gdevpdtx.h
gs/devices/vector/gdevpsdf.h
gs/devices/vector/gdevpsdi.c
gs/devices/vector/gdevpsdp.c
gs/devices/vector/gdevpsds.c
gs/devices/vector/gdevpsds.h
gs/devices/vector/gdevpsdu.c
gs/devices/vector/gdevpsf.h
gs/devices/vector/gdevpsf1.c
gs/devices/vector/gdevpsf2.c
gs/devices/vector/gdevpsfm.c
gs/devices/vector/gdevpsft.c
gs/devices/vector/gdevpsfu.c
gs/devices/vector/gdevpsfx.c
gs/devices/vector/gdevpsu.c
gs/devices/vector/gdevpsu.h
gs/devices/vector/gdevpx.c
gs/devices/vector/gdevtxtw.c
gs/devices/vector/gdevxps.c
gs/devices/vector/opdfread.h
gs/devices/vector/whitelst.c
gs/devices/vector/whitelst.h
gs/doc/API.htm
gs/doc/AUTHORS
gs/doc/C-style.htm
gs/doc/COPYING
gs/doc/Changes.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/GS9_Color_Management.pdf
gs/doc/GS9_Color_Management.tex
gs/doc/Helpers.htm
gs/doc/Hershey.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/gs.css
gs/doc/gsdoc.el
gs/doc/index.html
gs/doc/pscet_status.txt
gs/doc/subclass.htm
gs/doc/thirdparty.htm
gs/examples/alphabet.ps
gs/examples/annots.pdf
gs/examples/chess.ps
gs/examples/cjk/all_ac1.ps
gs/examples/cjk/all_ag1.ps
gs/examples/cjk/all_aj1.ps
gs/examples/cjk/all_aj2.ps
gs/examples/cjk/all_ak1.ps
gs/examples/cjk/article9.ps
gs/examples/cjk/gscjk_ac.ps
gs/examples/cjk/gscjk_ag.ps
gs/examples/cjk/gscjk_aj.ps
gs/examples/cjk/gscjk_ak.ps
gs/examples/cjk/iso2022.ps
gs/examples/cjk/iso2022v.ps
gs/examples/colorcir.ps
gs/examples/doretree.ps
gs/examples/escher.ps
gs/examples/golfer.eps
gs/examples/grayalph.ps
gs/examples/ridt91.eps
gs/examples/snowflak.ps
gs/examples/text_graph_image_cmyk_rgb.pdf
gs/examples/text_graphic_image.pdf
gs/examples/tiger.eps
gs/examples/transparency_example.ps
gs/examples/vasarely.ps
gs/examples/waterfal.ps
gs/expat/COPYING
gs/expat/Changes
gs/expat/MANIFEST
gs/expat/Makefile.in
gs/expat/README
gs/expat/amiga/Makefile
gs/expat/amiga/README.txt
gs/expat/amiga/expat.xml
gs/expat/amiga/expat_lib.c
gs/expat/amiga/expat_vectors.c
gs/expat/amiga/include/inline4/expat.h
gs/expat/amiga/include/interfaces/expat.h
gs/expat/amiga/include/libraries/expat.h
gs/expat/amiga/include/proto/expat.h
gs/expat/amiga/launch.c
gs/expat/amiga/stdlib.c
gs/expat/bcb5/README.txt
gs/expat/bcb5/all_projects.bpg
gs/expat/bcb5/elements.bpf
gs/expat/bcb5/elements.bpr
gs/expat/bcb5/elements.mak
gs/expat/bcb5/expat.bpf
gs/expat/bcb5/expat.bpr
gs/expat/bcb5/expat.mak
gs/expat/bcb5/expat_static.bpf
gs/expat/bcb5/expat_static.bpr
gs/expat/bcb5/expat_static.mak
gs/expat/bcb5/expatw.bpf
gs/expat/bcb5/expatw.bpr
gs/expat/bcb5/expatw.mak
gs/expat/bcb5/expatw_static.bpf
gs/expat/bcb5/expatw_static.bpr
gs/expat/bcb5/expatw_static.mak
gs/expat/bcb5/libexpat_mtd.def
gs/expat/bcb5/libexpatw_mtd.def
gs/expat/bcb5/makefile.mak
gs/expat/bcb5/outline.bpf
gs/expat/bcb5/outline.bpr
gs/expat/bcb5/outline.mak
gs/expat/bcb5/setup.bat
gs/expat/bcb5/xmlwf.bpf
gs/expat/bcb5/xmlwf.bpr
gs/expat/bcb5/xmlwf.mak
gs/expat/configure
gs/expat/configure.in
gs/expat/conftools/PrintPath
gs/expat/conftools/ac_c_bigendian_cross.m4
gs/expat/conftools/config.guess
gs/expat/conftools/config.sub
gs/expat/conftools/expat.m4
gs/expat/conftools/get-version.sh
gs/expat/conftools/install-sh
gs/expat/conftools/libtool.m4
gs/expat/conftools/ltmain.sh
gs/expat/conftools/mkinstalldirs
gs/expat/doc/expat.png
gs/expat/doc/reference.html
gs/expat/doc/style.css
gs/expat/doc/valid-xhtml10.png
gs/expat/doc/xmlwf.1
gs/expat/doc/xmlwf.sgml
gs/expat/examples/elements.c
gs/expat/examples/elements.dsp
gs/expat/examples/outline.c
gs/expat/examples/outline.dsp
gs/expat/expat.dsw
gs/expat/expat_config.h.in
gs/expat/lib/Makefile.MPW
gs/expat/lib/amigaconfig.h
gs/expat/lib/ascii.h
gs/expat/lib/asciitab.h
gs/expat/lib/expat.dsp
gs/expat/lib/expat.h
gs/expat/lib/expat_external.h
gs/expat/lib/expat_static.dsp
gs/expat/lib/expatw.dsp
gs/expat/lib/expatw_static.dsp
gs/expat/lib/iasciitab.h
gs/expat/lib/internal.h
gs/expat/lib/latin1tab.h
gs/expat/lib/libexpat.def
gs/expat/lib/libexpatw.def
gs/expat/lib/macconfig.h
gs/expat/lib/nametab.h
gs/expat/lib/utf8tab.h
gs/expat/lib/winconfig.h
gs/expat/lib/xmlparse.c
gs/expat/lib/xmlrole.c
gs/expat/lib/xmlrole.h
gs/expat/lib/xmltok.c
gs/expat/lib/xmltok.h
gs/expat/lib/xmltok_impl.c
gs/expat/lib/xmltok_impl.h
gs/expat/lib/xmltok_ns.c
gs/expat/tests/README.txt
gs/expat/tests/benchmark/README.txt
gs/expat/tests/benchmark/benchmark.c
gs/expat/tests/benchmark/benchmark.dsp
gs/expat/tests/benchmark/benchmark.dsw
gs/expat/tests/chardata.c
gs/expat/tests/chardata.h
gs/expat/tests/minicheck.c
gs/expat/tests/minicheck.h
gs/expat/tests/runtests.c
gs/expat/tests/runtestspp.cpp
gs/expat/tests/xmltest.sh
gs/expat/vms/README.vms
gs/expat/vms/descrip.mms
gs/expat/vms/expat_config.h
gs/expat/win32/MANIFEST.txt
gs/expat/win32/README.txt
gs/expat/win32/expat.iss
gs/expat/xmlwf/codepage.c
gs/expat/xmlwf/codepage.h
gs/expat/xmlwf/ct.c
gs/expat/xmlwf/filemap.h
gs/expat/xmlwf/readfilemap.c
gs/expat/xmlwf/unixfilemap.c
gs/expat/xmlwf/win32filemap.c
gs/expat/xmlwf/xmlfile.c
gs/expat/xmlwf/xmlfile.h
gs/expat/xmlwf/xmlmime.c
gs/expat/xmlwf/xmlmime.h
gs/expat/xmlwf/xmltchar.h
gs/expat/xmlwf/xmlurl.h
gs/expat/xmlwf/xmlwf.c
gs/expat/xmlwf/xmlwf.dsp
gs/expat/xmlwf/xmlwin32url.cxx
gs/freetype/CMakeLists.txt
gs/freetype/ChangeLog
gs/freetype/ChangeLog.20
gs/freetype/ChangeLog.21
gs/freetype/ChangeLog.22
gs/freetype/ChangeLog.23
gs/freetype/ChangeLog.24
gs/freetype/Jamfile
gs/freetype/Jamrules
gs/freetype/Makefile
gs/freetype/README
gs/freetype/README.git
gs/freetype/autogen.sh
gs/freetype/builds/amiga/README
gs/freetype/builds/amiga/include/config/ftconfig.h
gs/freetype/builds/amiga/include/config/ftmodule.h
gs/freetype/builds/amiga/makefile
gs/freetype/builds/amiga/makefile.os4
gs/freetype/builds/amiga/smakefile
gs/freetype/builds/amiga/src/base/ftdebug.c
gs/freetype/builds/amiga/src/base/ftsystem.c
gs/freetype/builds/ansi/ansi-def.mk
gs/freetype/builds/ansi/ansi.mk
gs/freetype/builds/atari/ATARI.H
gs/freetype/builds/atari/FNames.SIC
gs/freetype/builds/atari/FREETYPE.PRJ
gs/freetype/builds/atari/README.TXT
gs/freetype/builds/atari/deflinejoiner.awk
gs/freetype/builds/atari/gen-purec-patch.sh
gs/freetype/builds/beos/beos-def.mk
gs/freetype/builds/beos/beos.mk
gs/freetype/builds/beos/detect.mk
gs/freetype/builds/cmake/iOS.cmake
gs/freetype/builds/compiler/ansi-cc.mk
gs/freetype/builds/compiler/bcc-dev.mk
gs/freetype/builds/compiler/bcc.mk
gs/freetype/builds/compiler/emx.mk
gs/freetype/builds/compiler/gcc-dev.mk
gs/freetype/builds/compiler/gcc.mk
gs/freetype/builds/compiler/intelc.mk
gs/freetype/builds/compiler/unix-lcc.mk
gs/freetype/builds/compiler/visualage.mk
gs/freetype/builds/compiler/visualc.mk
gs/freetype/builds/compiler/watcom.mk
gs/freetype/builds/compiler/win-lcc.mk
gs/freetype/builds/detect.mk
gs/freetype/builds/dos/detect.mk
gs/freetype/builds/dos/dos-def.mk
gs/freetype/builds/dos/dos-emx.mk
gs/freetype/builds/dos/dos-gcc.mk
gs/freetype/builds/dos/dos-wat.mk
gs/freetype/builds/exports.mk
gs/freetype/builds/freetype.mk
gs/freetype/builds/link_dos.mk
gs/freetype/builds/link_std.mk
gs/freetype/builds/mac/FreeType.m68k_cfm.make.txt
gs/freetype/builds/mac/FreeType.m68k_far.make.txt
gs/freetype/builds/mac/FreeType.ppc_carbon.make.txt
gs/freetype/builds/mac/FreeType.ppc_classic.make.txt
gs/freetype/builds/mac/README
gs/freetype/builds/mac/ascii2mpw.py
gs/freetype/builds/mac/freetype-Info.plist
gs/freetype/builds/mac/ftlib.prj.xml
gs/freetype/builds/mac/ftmac.c
gs/freetype/builds/modules.mk
gs/freetype/builds/newline
gs/freetype/builds/os2/detect.mk
gs/freetype/builds/os2/os2-def.mk
gs/freetype/builds/os2/os2-dev.mk
gs/freetype/builds/os2/os2-gcc.mk
gs/freetype/builds/symbian/bld.inf
gs/freetype/builds/symbian/freetype.mmp
gs/freetype/builds/toplevel.mk
gs/freetype/builds/unix/aclocal.m4
gs/freetype/builds/unix/config.guess
gs/freetype/builds/unix/config.sub
gs/freetype/builds/unix/configure.ac
gs/freetype/builds/unix/configure.raw
gs/freetype/builds/unix/detect.mk
gs/freetype/builds/unix/freetype-config.in
gs/freetype/builds/unix/freetype2.in
gs/freetype/builds/unix/freetype2.m4
gs/freetype/builds/unix/ft-munmap.m4
gs/freetype/builds/unix/ftconfig.in
gs/freetype/builds/unix/ftsystem.c
gs/freetype/builds/unix/install-sh
gs/freetype/builds/unix/install.mk
gs/freetype/builds/unix/ltmain.sh
gs/freetype/builds/unix/mkinstalldirs
gs/freetype/builds/unix/pkg.m4
gs/freetype/builds/unix/unix-cc.in
gs/freetype/builds/unix/unix-def.in
gs/freetype/builds/unix/unix-dev.mk
gs/freetype/builds/unix/unix-lcc.mk
gs/freetype/builds/unix/unix.mk
gs/freetype/builds/unix/unixddef.mk
gs/freetype/builds/vms/ftconfig.h
gs/freetype/builds/vms/ftsystem.c
gs/freetype/builds/wince/ftdebug.c
gs/freetype/builds/wince/vc2005-ce/freetype.sln
gs/freetype/builds/wince/vc2005-ce/freetype.vcproj
gs/freetype/builds/wince/vc2005-ce/index.html
gs/freetype/builds/wince/vc2008-ce/freetype.sln
gs/freetype/builds/wince/vc2008-ce/freetype.vcproj
gs/freetype/builds/wince/vc2008-ce/index.html
gs/freetype/builds/windows/detect.mk
gs/freetype/builds/windows/ftdebug.c
gs/freetype/builds/windows/vc2005/freetype.sln
gs/freetype/builds/windows/vc2005/freetype.vcproj
gs/freetype/builds/windows/vc2005/index.html
gs/freetype/builds/windows/vc2008/freetype.sln
gs/freetype/builds/windows/vc2008/freetype.vcproj
gs/freetype/builds/windows/vc2008/index.html
gs/freetype/builds/windows/vc2010/freetype.sln
gs/freetype/builds/windows/vc2010/freetype.user.props
gs/freetype/builds/windows/vc2010/freetype.vcxproj
gs/freetype/builds/windows/vc2010/freetype.vcxproj.filters
gs/freetype/builds/windows/vc2010/index.html
gs/freetype/builds/windows/visualc/freetype.dsp
gs/freetype/builds/windows/visualc/freetype.dsw
gs/freetype/builds/windows/visualc/freetype.sln
gs/freetype/builds/windows/visualc/freetype.vcproj
gs/freetype/builds/windows/visualc/index.html
gs/freetype/builds/windows/visualce/freetype.dsp
gs/freetype/builds/windows/visualce/freetype.dsw
gs/freetype/builds/windows/visualce/freetype.vcproj
gs/freetype/builds/windows/visualce/index.html
gs/freetype/builds/windows/w32-bcc.mk
gs/freetype/builds/windows/w32-bccd.mk
gs/freetype/builds/windows/w32-dev.mk
gs/freetype/builds/windows/w32-gcc.mk
gs/freetype/builds/windows/w32-icc.mk
gs/freetype/builds/windows/w32-intl.mk
gs/freetype/builds/windows/w32-lcc.mk
gs/freetype/builds/windows/w32-mingw32.mk
gs/freetype/builds/windows/w32-vcc.mk
gs/freetype/builds/windows/w32-wat.mk
gs/freetype/builds/windows/win32-def.mk
gs/freetype/configure
gs/freetype/devel/ft2build.h
gs/freetype/devel/ftoption.h
gs/freetype/docs/CHANGES
gs/freetype/docs/CMAKE
gs/freetype/docs/CUSTOMIZE
gs/freetype/docs/DEBUG
gs/freetype/docs/FTL.TXT
gs/freetype/docs/GPLv2.TXT
gs/freetype/docs/INSTALL
gs/freetype/docs/INSTALL.ANY
gs/freetype/docs/INSTALL.CROSS
gs/freetype/docs/INSTALL.GNU
gs/freetype/docs/INSTALL.MAC
gs/freetype/docs/INSTALL.UNIX
gs/freetype/docs/INSTALL.VMS
gs/freetype/docs/LICENSE.TXT
gs/freetype/docs/MAKEPP
gs/freetype/docs/PROBLEMS
gs/freetype/docs/TODO
gs/freetype/docs/VERSION.DLL
gs/freetype/docs/formats.txt
gs/freetype/docs/freetype-config.1
gs/freetype/docs/raster.txt
gs/freetype/docs/reference/README
gs/freetype/docs/reference/ft2-auto_hinter.html
gs/freetype/docs/reference/ft2-base_interface.html
gs/freetype/docs/reference/ft2-basic_types.html
gs/freetype/docs/reference/ft2-bdf_fonts.html
gs/freetype/docs/reference/ft2-bitmap_handling.html
gs/freetype/docs/reference/ft2-bzip2.html
gs/freetype/docs/reference/ft2-cache_subsystem.html
gs/freetype/docs/reference/ft2-cff_driver.html
gs/freetype/docs/reference/ft2-cid_fonts.html
gs/freetype/docs/reference/ft2-computations.html
gs/freetype/docs/reference/ft2-font_formats.html
gs/freetype/docs/reference/ft2-gasp_table.html
gs/freetype/docs/reference/ft2-glyph_management.html
gs/freetype/docs/reference/ft2-glyph_stroker.html
gs/freetype/docs/reference/ft2-glyph_variants.html
gs/freetype/docs/reference/ft2-gx_validation.html
gs/freetype/docs/reference/ft2-gzip.html
gs/freetype/docs/reference/ft2-header_file_macros.html
gs/freetype/docs/reference/ft2-header_inclusion.html
gs/freetype/docs/reference/ft2-incremental.html
gs/freetype/docs/reference/ft2-index.html
gs/freetype/docs/reference/ft2-lcd_filtering.html
gs/freetype/docs/reference/ft2-list_processing.html
gs/freetype/docs/reference/ft2-lzw.html
gs/freetype/docs/reference/ft2-mac_specific.html
gs/freetype/docs/reference/ft2-module_management.html
gs/freetype/docs/reference/ft2-multiple_masters.html
gs/freetype/docs/reference/ft2-ot_validation.html
gs/freetype/docs/reference/ft2-outline_processing.html
gs/freetype/docs/reference/ft2-pfr_fonts.html
gs/freetype/docs/reference/ft2-quick_advance.html
gs/freetype/docs/reference/ft2-raster.html
gs/freetype/docs/reference/ft2-sfnt_names.html
gs/freetype/docs/reference/ft2-sizes_management.html
gs/freetype/docs/reference/ft2-system_interface.html
gs/freetype/docs/reference/ft2-toc.html
gs/freetype/docs/reference/ft2-truetype_engine.html
gs/freetype/docs/reference/ft2-truetype_tables.html
gs/freetype/docs/reference/ft2-tt_driver.html
gs/freetype/docs/reference/ft2-type1_tables.html
gs/freetype/docs/reference/ft2-user_allocation.html
gs/freetype/docs/reference/ft2-version.html
gs/freetype/docs/reference/ft2-winfnt_fonts.html
gs/freetype/docs/release
gs/freetype/include/config/ftconfig.h
gs/freetype/include/config/ftheader.h
gs/freetype/include/config/ftmodule.h
gs/freetype/include/config/ftoption.h
gs/freetype/include/config/ftstdlib.h
gs/freetype/include/freetype.h
gs/freetype/include/ft2build.h
gs/freetype/include/ftadvanc.h
gs/freetype/include/ftautoh.h
gs/freetype/include/ftbbox.h
gs/freetype/include/ftbdf.h
gs/freetype/include/ftbitmap.h
gs/freetype/include/ftbzip2.h
gs/freetype/include/ftcache.h
gs/freetype/include/ftcffdrv.h
gs/freetype/include/ftchapters.h
gs/freetype/include/ftcid.h
gs/freetype/include/fterrdef.h
gs/freetype/include/fterrors.h
gs/freetype/include/ftgasp.h
gs/freetype/include/ftglyph.h
gs/freetype/include/ftgxval.h
gs/freetype/include/ftgzip.h
gs/freetype/include/ftimage.h
gs/freetype/include/ftincrem.h
gs/freetype/include/ftlcdfil.h
gs/freetype/include/ftlist.h
gs/freetype/include/ftlzw.h
gs/freetype/include/ftmac.h
gs/freetype/include/ftmm.h
gs/freetype/include/ftmodapi.h
gs/freetype/include/ftmoderr.h
gs/freetype/include/ftotval.h
gs/freetype/include/ftoutln.h
gs/freetype/include/ftpfr.h
gs/freetype/include/ftrender.h
gs/freetype/include/ftsizes.h
gs/freetype/include/ftsnames.h
gs/freetype/include/ftstroke.h
gs/freetype/include/ftsynth.h
gs/freetype/include/ftsystem.h
gs/freetype/include/fttrigon.h
gs/freetype/include/ftttdrv.h
gs/freetype/include/fttypes.h
gs/freetype/include/ftwinfnt.h
gs/freetype/include/ftxf86.h
gs/freetype/include/internal/autohint.h
gs/freetype/include/internal/ftcalc.h
gs/freetype/include/internal/ftdebug.h
gs/freetype/include/internal/ftdriver.h
gs/freetype/include/internal/ftgloadr.h
gs/freetype/include/internal/ftmemory.h
gs/freetype/include/internal/ftobjs.h
gs/freetype/include/internal/ftpic.h
gs/freetype/include/internal/ftrfork.h
gs/freetype/include/internal/ftserv.h
gs/freetype/include/internal/ftstream.h
gs/freetype/include/internal/fttrace.h
gs/freetype/include/internal/ftvalid.h
gs/freetype/include/internal/internal.h
gs/freetype/include/internal/psaux.h
gs/freetype/include/internal/pshints.h
gs/freetype/include/internal/services/svbdf.h
gs/freetype/include/internal/services/svcid.h
gs/freetype/include/internal/services/svgldict.h
gs/freetype/include/internal/services/svgxval.h
gs/freetype/include/internal/services/svkern.h
gs/freetype/include/internal/services/svmm.h
gs/freetype/include/internal/services/svotval.h
gs/freetype/include/internal/services/svpfr.h
gs/freetype/include/internal/services/svpostnm.h
gs/freetype/include/internal/services/svprop.h
gs/freetype/include/internal/services/svpscmap.h
gs/freetype/include/internal/services/svpsinfo.h
gs/freetype/include/internal/services/svsfnt.h
gs/freetype/include/internal/services/svttcmap.h
gs/freetype/include/internal/services/svtteng.h
gs/freetype/include/internal/services/svttglyf.h
gs/freetype/include/internal/services/svwinfnt.h
gs/freetype/include/internal/services/svxf86nm.h
gs/freetype/include/internal/sfnt.h
gs/freetype/include/internal/t1types.h
gs/freetype/include/internal/tttypes.h
gs/freetype/include/t1tables.h
gs/freetype/include/ttnameid.h
gs/freetype/include/tttables.h
gs/freetype/include/tttags.h
gs/freetype/include/ttunpat.h
gs/freetype/modules.cfg
gs/freetype/objs/README
gs/freetype/src/Jamfile
gs/freetype/src/autofit/Jamfile
gs/freetype/src/autofit/afangles.c
gs/freetype/src/autofit/afangles.h
gs/freetype/src/autofit/afblue.c
gs/freetype/src/autofit/afblue.cin
gs/freetype/src/autofit/afblue.dat
gs/freetype/src/autofit/afblue.h
gs/freetype/src/autofit/afblue.hin
gs/freetype/src/autofit/afcjk.c
gs/freetype/src/autofit/afcjk.h
gs/freetype/src/autofit/afcover.h
gs/freetype/src/autofit/afdummy.c
gs/freetype/src/autofit/afdummy.h
gs/freetype/src/autofit/aferrors.h
gs/freetype/src/autofit/afglobal.c
gs/freetype/src/autofit/afglobal.h
gs/freetype/src/autofit/afhints.c
gs/freetype/src/autofit/afhints.h
gs/freetype/src/autofit/afindic.c
gs/freetype/src/autofit/afindic.h
gs/freetype/src/autofit/aflatin.c
gs/freetype/src/autofit/aflatin.h
gs/freetype/src/autofit/aflatin2.c
gs/freetype/src/autofit/aflatin2.h
gs/freetype/src/autofit/afloader.c
gs/freetype/src/autofit/afloader.h
gs/freetype/src/autofit/afmodule.c
gs/freetype/src/autofit/afmodule.h
gs/freetype/src/autofit/afpic.c
gs/freetype/src/autofit/afpic.h
gs/freetype/src/autofit/afranges.c
gs/freetype/src/autofit/afranges.h
gs/freetype/src/autofit/afscript.h
gs/freetype/src/autofit/afstyles.h
gs/freetype/src/autofit/aftypes.h
gs/freetype/src/autofit/afwarp.c
gs/freetype/src/autofit/afwarp.h
gs/freetype/src/autofit/afwrtsys.h
gs/freetype/src/autofit/autofit.c
gs/freetype/src/autofit/hbshim.c
gs/freetype/src/autofit/hbshim.h
gs/freetype/src/autofit/module.mk
gs/freetype/src/autofit/rules.mk
gs/freetype/src/base/Jamfile
gs/freetype/src/base/basepic.c
gs/freetype/src/base/basepic.h
gs/freetype/src/base/ftadvanc.c
gs/freetype/src/base/ftapi.c
gs/freetype/src/base/ftbase.c
gs/freetype/src/base/ftbase.h
gs/freetype/src/base/ftbbox.c
gs/freetype/src/base/ftbdf.c
gs/freetype/src/base/ftbitmap.c
gs/freetype/src/base/ftcalc.c
gs/freetype/src/base/ftcid.c
gs/freetype/src/base/ftdbgmem.c
gs/freetype/src/base/ftdebug.c
gs/freetype/src/base/ftfstype.c
gs/freetype/src/base/ftgasp.c
gs/freetype/src/base/ftgloadr.c
gs/freetype/src/base/ftglyph.c
gs/freetype/src/base/ftgxval.c
gs/freetype/src/base/ftinit.c
gs/freetype/src/base/ftlcdfil.c
gs/freetype/src/base/ftmac.c
gs/freetype/src/base/ftmm.c
gs/freetype/src/base/ftobjs.c
gs/freetype/src/base/ftotval.c
gs/freetype/src/base/ftoutln.c
gs/freetype/src/base/ftpatent.c
gs/freetype/src/base/ftpfr.c
gs/freetype/src/base/ftpic.c
gs/freetype/src/base/ftrfork.c
gs/freetype/src/base/ftsnames.c
gs/freetype/src/base/ftstream.c
gs/freetype/src/base/ftstroke.c
gs/freetype/src/base/ftsynth.c
gs/freetype/src/base/ftsystem.c
gs/freetype/src/base/fttrigon.c
gs/freetype/src/base/fttype1.c
gs/freetype/src/base/ftutil.c
gs/freetype/src/base/ftwinfnt.c
gs/freetype/src/base/ftxf86.c
gs/freetype/src/base/md5.c
gs/freetype/src/base/md5.h
gs/freetype/src/base/rules.mk
gs/freetype/src/bdf/Jamfile
gs/freetype/src/bdf/README
gs/freetype/src/bdf/bdf.c
gs/freetype/src/bdf/bdf.h
gs/freetype/src/bdf/bdfdrivr.c
gs/freetype/src/bdf/bdfdrivr.h
gs/freetype/src/bdf/bdferror.h
gs/freetype/src/bdf/bdflib.c
gs/freetype/src/bdf/module.mk
gs/freetype/src/bdf/rules.mk
gs/freetype/src/bzip2/Jamfile
gs/freetype/src/bzip2/ftbzip2.c
gs/freetype/src/bzip2/rules.mk
gs/freetype/src/cache/Jamfile
gs/freetype/src/cache/ftcache.c
gs/freetype/src/cache/ftcbasic.c
gs/freetype/src/cache/ftccache.c
gs/freetype/src/cache/ftccache.h
gs/freetype/src/cache/ftccback.h
gs/freetype/src/cache/ftccmap.c
gs/freetype/src/cache/ftcerror.h
gs/freetype/src/cache/ftcglyph.c
gs/freetype/src/cache/ftcglyph.h
gs/freetype/src/cache/ftcimage.c
gs/freetype/src/cache/ftcimage.h
gs/freetype/src/cache/ftcmanag.c
gs/freetype/src/cache/ftcmanag.h
gs/freetype/src/cache/ftcmru.c
gs/freetype/src/cache/ftcmru.h
gs/freetype/src/cache/ftcsbits.c
gs/freetype/src/cache/ftcsbits.h
gs/freetype/src/cache/rules.mk
gs/freetype/src/cff/Jamfile
gs/freetype/src/cff/cf2arrst.c
gs/freetype/src/cff/cf2arrst.h
gs/freetype/src/cff/cf2blues.c
gs/freetype/src/cff/cf2blues.h
gs/freetype/src/cff/cf2error.c
gs/freetype/src/cff/cf2error.h
gs/freetype/src/cff/cf2fixed.h
gs/freetype/src/cff/cf2font.c
gs/freetype/src/cff/cf2font.h
gs/freetype/src/cff/cf2ft.c
gs/freetype/src/cff/cf2ft.h
gs/freetype/src/cff/cf2glue.h
gs/freetype/src/cff/cf2hints.c
gs/freetype/src/cff/cf2hints.h
gs/freetype/src/cff/cf2intrp.c
gs/freetype/src/cff/cf2intrp.h
gs/freetype/src/cff/cf2read.c
gs/freetype/src/cff/cf2read.h
gs/freetype/src/cff/cf2stack.c
gs/freetype/src/cff/cf2stack.h
gs/freetype/src/cff/cf2types.h
gs/freetype/src/cff/cff.c
gs/freetype/src/cff/cffcmap.c
gs/freetype/src/cff/cffcmap.h
gs/freetype/src/cff/cffdrivr.c
gs/freetype/src/cff/cffdrivr.h
gs/freetype/src/cff/cfferrs.h
gs/freetype/src/cff/cffgload.c
gs/freetype/src/cff/cffgload.h
gs/freetype/src/cff/cffload.c
gs/freetype/src/cff/cffload.h
gs/freetype/src/cff/cffobjs.c
gs/freetype/src/cff/cffobjs.h
gs/freetype/src/cff/cffparse.c
gs/freetype/src/cff/cffparse.h
gs/freetype/src/cff/cffpic.c
gs/freetype/src/cff/cffpic.h
gs/freetype/src/cff/cfftoken.h
gs/freetype/src/cff/cfftypes.h
gs/freetype/src/cff/module.mk
gs/freetype/src/cff/rules.mk
gs/freetype/src/cid/Jamfile
gs/freetype/src/cid/ciderrs.h
gs/freetype/src/cid/cidgload.c
gs/freetype/src/cid/cidgload.h
gs/freetype/src/cid/cidload.c
gs/freetype/src/cid/cidload.h
gs/freetype/src/cid/cidobjs.c
gs/freetype/src/cid/cidobjs.h
gs/freetype/src/cid/cidparse.c
gs/freetype/src/cid/cidparse.h
gs/freetype/src/cid/cidriver.c
gs/freetype/src/cid/cidriver.h
gs/freetype/src/cid/cidtoken.h
gs/freetype/src/cid/module.mk
gs/freetype/src/cid/rules.mk
gs/freetype/src/cid/type1cid.c
gs/freetype/src/gxvalid/Jamfile
gs/freetype/src/gxvalid/README
gs/freetype/src/gxvalid/gxvalid.c
gs/freetype/src/gxvalid/gxvalid.h
gs/freetype/src/gxvalid/gxvbsln.c
gs/freetype/src/gxvalid/gxvcommn.c
gs/freetype/src/gxvalid/gxvcommn.h
gs/freetype/src/gxvalid/gxverror.h
gs/freetype/src/gxvalid/gxvfeat.c
gs/freetype/src/gxvalid/gxvfeat.h
gs/freetype/src/gxvalid/gxvfgen.c
gs/freetype/src/gxvalid/gxvjust.c
gs/freetype/src/gxvalid/gxvkern.c
gs/freetype/src/gxvalid/gxvlcar.c
gs/freetype/src/gxvalid/gxvmod.c
gs/freetype/src/gxvalid/gxvmod.h
gs/freetype/src/gxvalid/gxvmort.c
gs/freetype/src/gxvalid/gxvmort.h
gs/freetype/src/gxvalid/gxvmort0.c
gs/freetype/src/gxvalid/gxvmort1.c
gs/freetype/src/gxvalid/gxvmort2.c
gs/freetype/src/gxvalid/gxvmort4.c
gs/freetype/src/gxvalid/gxvmort5.c
gs/freetype/src/gxvalid/gxvmorx.c
gs/freetype/src/gxvalid/gxvmorx.h
gs/freetype/src/gxvalid/gxvmorx0.c
gs/freetype/src/gxvalid/gxvmorx1.c
gs/freetype/src/gxvalid/gxvmorx2.c
gs/freetype/src/gxvalid/gxvmorx4.c
gs/freetype/src/gxvalid/gxvmorx5.c
gs/freetype/src/gxvalid/gxvopbd.c
gs/freetype/src/gxvalid/gxvprop.c
gs/freetype/src/gxvalid/gxvtrak.c
gs/freetype/src/gxvalid/module.mk
gs/freetype/src/gxvalid/rules.mk
gs/freetype/src/gzip/Jamfile
gs/freetype/src/gzip/adler32.c
gs/freetype/src/gzip/ftgzip.c
gs/freetype/src/gzip/infblock.c
gs/freetype/src/gzip/infblock.h
gs/freetype/src/gzip/infcodes.c
gs/freetype/src/gzip/infcodes.h
gs/freetype/src/gzip/inffixed.h
gs/freetype/src/gzip/inflate.c
gs/freetype/src/gzip/inftrees.c
gs/freetype/src/gzip/inftrees.h
gs/freetype/src/gzip/infutil.c
gs/freetype/src/gzip/infutil.h
gs/freetype/src/gzip/rules.mk
gs/freetype/src/gzip/zconf.h
gs/freetype/src/gzip/zlib.h
gs/freetype/src/gzip/zutil.c
gs/freetype/src/gzip/zutil.h
gs/freetype/src/lzw/Jamfile
gs/freetype/src/lzw/ftlzw.c
gs/freetype/src/lzw/ftzopen.c
gs/freetype/src/lzw/ftzopen.h
gs/freetype/src/lzw/rules.mk
gs/freetype/src/otvalid/Jamfile
gs/freetype/src/otvalid/module.mk
gs/freetype/src/otvalid/otvalid.c
gs/freetype/src/otvalid/otvalid.h
gs/freetype/src/otvalid/otvbase.c
gs/freetype/src/otvalid/otvcommn.c
gs/freetype/src/otvalid/otvcommn.h
gs/freetype/src/otvalid/otverror.h
gs/freetype/src/otvalid/otvgdef.c
gs/freetype/src/otvalid/otvgpos.c
gs/freetype/src/otvalid/otvgpos.h
gs/freetype/src/otvalid/otvgsub.c
gs/freetype/src/otvalid/otvjstf.c
gs/freetype/src/otvalid/otvmath.c
gs/freetype/src/otvalid/otvmod.c
gs/freetype/src/otvalid/otvmod.h
gs/freetype/src/otvalid/rules.mk
gs/freetype/src/pcf/Jamfile
gs/freetype/src/pcf/README
gs/freetype/src/pcf/module.mk
gs/freetype/src/pcf/pcf.c
gs/freetype/src/pcf/pcf.h
gs/freetype/src/pcf/pcfdrivr.c
gs/freetype/src/pcf/pcfdrivr.h
gs/freetype/src/pcf/pcferror.h
gs/freetype/src/pcf/pcfread.c
gs/freetype/src/pcf/pcfread.h
gs/freetype/src/pcf/pcfutil.c
gs/freetype/src/pcf/pcfutil.h
gs/freetype/src/pcf/rules.mk
gs/freetype/src/pfr/Jamfile
gs/freetype/src/pfr/module.mk
gs/freetype/src/pfr/pfr.c
gs/freetype/src/pfr/pfrcmap.c
gs/freetype/src/pfr/pfrcmap.h
gs/freetype/src/pfr/pfrdrivr.c
gs/freetype/src/pfr/pfrdrivr.h
gs/freetype/src/pfr/pfrerror.h
gs/freetype/src/pfr/pfrgload.c
gs/freetype/src/pfr/pfrgload.h
gs/freetype/src/pfr/pfrload.c
gs/freetype/src/pfr/pfrload.h
gs/freetype/src/pfr/pfrobjs.c
gs/freetype/src/pfr/pfrobjs.h
gs/freetype/src/pfr/pfrsbit.c
gs/freetype/src/pfr/pfrsbit.h
gs/freetype/src/pfr/pfrtypes.h
gs/freetype/src/pfr/rules.mk
gs/freetype/src/psaux/Jamfile
gs/freetype/src/psaux/afmparse.c
gs/freetype/src/psaux/afmparse.h
gs/freetype/src/psaux/module.mk
gs/freetype/src/psaux/psaux.c
gs/freetype/src/psaux/psauxerr.h
gs/freetype/src/psaux/psauxmod.c
gs/freetype/src/psaux/psauxmod.h
gs/freetype/src/psaux/psconv.c
gs/freetype/src/psaux/psconv.h
gs/freetype/src/psaux/psobjs.c
gs/freetype/src/psaux/psobjs.h
gs/freetype/src/psaux/rules.mk
gs/freetype/src/psaux/t1cmap.c
gs/freetype/src/psaux/t1cmap.h
gs/freetype/src/psaux/t1decode.c
gs/freetype/src/psaux/t1decode.h
gs/freetype/src/pshinter/Jamfile
gs/freetype/src/pshinter/module.mk
gs/freetype/src/pshinter/pshalgo.c
gs/freetype/src/pshinter/pshalgo.h
gs/freetype/src/pshinter/pshglob.c
gs/freetype/src/pshinter/pshglob.h
gs/freetype/src/pshinter/pshinter.c
gs/freetype/src/pshinter/pshmod.c
gs/freetype/src/pshinter/pshmod.h
gs/freetype/src/pshinter/pshnterr.h
gs/freetype/src/pshinter/pshpic.c
gs/freetype/src/pshinter/pshpic.h
gs/freetype/src/pshinter/pshrec.c
gs/freetype/src/pshinter/pshrec.h
gs/freetype/src/pshinter/rules.mk
gs/freetype/src/psnames/Jamfile
gs/freetype/src/psnames/module.mk
gs/freetype/src/psnames/psmodule.c
gs/freetype/src/psnames/psmodule.h
gs/freetype/src/psnames/psnamerr.h
gs/freetype/src/psnames/psnames.c
gs/freetype/src/psnames/pspic.c
gs/freetype/src/psnames/pspic.h
gs/freetype/src/psnames/pstables.h
gs/freetype/src/psnames/rules.mk
gs/freetype/src/raster/Jamfile
gs/freetype/src/raster/ftmisc.h
gs/freetype/src/raster/ftraster.c
gs/freetype/src/raster/ftraster.h
gs/freetype/src/raster/ftrend1.c
gs/freetype/src/raster/ftrend1.h
gs/freetype/src/raster/module.mk
gs/freetype/src/raster/raster.c
gs/freetype/src/raster/rasterrs.h
gs/freetype/src/raster/rastpic.c
gs/freetype/src/raster/rastpic.h
gs/freetype/src/raster/rules.mk
gs/freetype/src/sfnt/Jamfile
gs/freetype/src/sfnt/module.mk
gs/freetype/src/sfnt/pngshim.c
gs/freetype/src/sfnt/pngshim.h
gs/freetype/src/sfnt/rules.mk
gs/freetype/src/sfnt/sfdriver.c
gs/freetype/src/sfnt/sfdriver.h
gs/freetype/src/sfnt/sferrors.h
gs/freetype/src/sfnt/sfnt.c
gs/freetype/src/sfnt/sfntpic.c
gs/freetype/src/sfnt/sfntpic.h
gs/freetype/src/sfnt/sfobjs.c
gs/freetype/src/sfnt/sfobjs.h
gs/freetype/src/sfnt/ttbdf.c
gs/freetype/src/sfnt/ttbdf.h
gs/freetype/src/sfnt/ttcmap.c
gs/freetype/src/sfnt/ttcmap.h
gs/freetype/src/sfnt/ttcmapc.h
gs/freetype/src/sfnt/ttkern.c
gs/freetype/src/sfnt/ttkern.h
gs/freetype/src/sfnt/ttload.c
gs/freetype/src/sfnt/ttload.h
gs/freetype/src/sfnt/ttmtx.c
gs/freetype/src/sfnt/ttmtx.h
gs/freetype/src/sfnt/ttpost.c
gs/freetype/src/sfnt/ttpost.h
gs/freetype/src/sfnt/ttsbit.c
gs/freetype/src/sfnt/ttsbit.h
gs/freetype/src/smooth/Jamfile
gs/freetype/src/smooth/ftgrays.c
gs/freetype/src/smooth/ftgrays.h
gs/freetype/src/smooth/ftsmerrs.h
gs/freetype/src/smooth/ftsmooth.c
gs/freetype/src/smooth/ftsmooth.h
gs/freetype/src/smooth/ftspic.c
gs/freetype/src/smooth/ftspic.h
gs/freetype/src/smooth/module.mk
gs/freetype/src/smooth/rules.mk
gs/freetype/src/smooth/smooth.c
gs/freetype/src/tools/Jamfile
gs/freetype/src/tools/afblue.pl
gs/freetype/src/tools/apinames.c
gs/freetype/src/tools/chktrcmp.py
gs/freetype/src/tools/cordic.py
gs/freetype/src/tools/docmaker/content.py
gs/freetype/src/tools/docmaker/docbeauty.py
gs/freetype/src/tools/docmaker/docmaker.py
gs/freetype/src/tools/docmaker/formatter.py
gs/freetype/src/tools/docmaker/sources.py
gs/freetype/src/tools/docmaker/tohtml.py
gs/freetype/src/tools/docmaker/utils.py
gs/freetype/src/tools/ftrandom/Makefile
gs/freetype/src/tools/ftrandom/README
gs/freetype/src/tools/ftrandom/ftrandom.c
gs/freetype/src/tools/glnames.py
gs/freetype/src/tools/test_afm.c
gs/freetype/src/tools/test_bbox.c
gs/freetype/src/tools/test_trig.c
gs/freetype/src/truetype/Jamfile
gs/freetype/src/truetype/module.mk
gs/freetype/src/truetype/rules.mk
gs/freetype/src/truetype/truetype.c
gs/freetype/src/truetype/ttdriver.c
gs/freetype/src/truetype/ttdriver.h
gs/freetype/src/truetype/tterrors.h
gs/freetype/src/truetype/ttgload.c
gs/freetype/src/truetype/ttgload.h
gs/freetype/src/truetype/ttgxvar.c
gs/freetype/src/truetype/ttgxvar.h
gs/freetype/src/truetype/ttinterp.c
gs/freetype/src/truetype/ttinterp.h
gs/freetype/src/truetype/ttobjs.c
gs/freetype/src/truetype/ttobjs.h
gs/freetype/src/truetype/ttpic.c
gs/freetype/src/truetype/ttpic.h
gs/freetype/src/truetype/ttpload.c
gs/freetype/src/truetype/ttpload.h
gs/freetype/src/truetype/ttsubpix.c
gs/freetype/src/truetype/ttsubpix.h
gs/freetype/src/type1/Jamfile
gs/freetype/src/type1/module.mk
gs/freetype/src/type1/rules.mk
gs/freetype/src/type1/t1afm.c
gs/freetype/src/type1/t1afm.h
gs/freetype/src/type1/t1driver.c
gs/freetype/src/type1/t1driver.h
gs/freetype/src/type1/t1errors.h
gs/freetype/src/type1/t1gload.c
gs/freetype/src/type1/t1gload.h
gs/freetype/src/type1/t1load.c
gs/freetype/src/type1/t1load.h
gs/freetype/src/type1/t1objs.c
gs/freetype/src/type1/t1objs.h
gs/freetype/src/type1/t1parse.c
gs/freetype/src/type1/t1parse.h
gs/freetype/src/type1/t1tokens.h
gs/freetype/src/type1/type1.c
gs/freetype/src/type42/Jamfile
gs/freetype/src/type42/module.mk
gs/freetype/src/type42/rules.mk
gs/freetype/src/type42/t42drivr.c
gs/freetype/src/type42/t42drivr.h
gs/freetype/src/type42/t42error.h
gs/freetype/src/type42/t42objs.c
gs/freetype/src/type42/t42objs.h
gs/freetype/src/type42/t42parse.c
gs/freetype/src/type42/t42parse.h
gs/freetype/src/type42/t42types.h
gs/freetype/src/type42/type42.c
gs/freetype/src/winfonts/Jamfile
gs/freetype/src/winfonts/fnterrs.h
gs/freetype/src/winfonts/module.mk
gs/freetype/src/winfonts/rules.mk
gs/freetype/src/winfonts/winfnt.c
gs/freetype/src/winfonts/winfnt.h
gs/freetype/version.sed
gs/freetype/vms_make.com
gs/ghostscript-ufst.vcproj
gs/ghostscript.vcproj
gs/ghostscript_rt.vcxproj
gs/iccprofiles/default_cmyk.icc
gs/iccprofiles/default_gray.icc
gs/iccprofiles/default_rgb.icc
gs/iccprofiles/gray_to_k.icc
gs/iccprofiles/lab.icc
gs/iccprofiles/ps_cmyk.icc
gs/iccprofiles/ps_gray.icc
gs/iccprofiles/ps_rgb.icc
gs/iccprofiles/sgray.icc
gs/iccprofiles/srgb.icc
gs/ijs/Makefile.am
gs/ijs/Makefile.in
gs/ijs/README
gs/ijs/autogen.sh
gs/ijs/common.mak
gs/ijs/compile
gs/ijs/config.guess
gs/ijs/config.sub
gs/ijs/configure
gs/ijs/configure.ac
gs/ijs/ijs-config.1
gs/ijs/ijs-config.in
gs/ijs/ijs.c
gs/ijs/ijs.h
gs/ijs/ijs.pc.in
gs/ijs/ijs_client.c
gs/ijs/ijs_client.h
gs/ijs/ijs_client_example.c
gs/ijs/ijs_exec_unix.c
gs/ijs/ijs_exec_win.c
gs/ijs/ijs_server.c
gs/ijs/ijs_server.h
gs/ijs/ijs_server_example.c
gs/ijs/ijs_spec.pdf
gs/ijs/ijs_spec.ps
gs/ijs/ijs_spec.sgml
gs/ijs/install-sh
gs/ijs/libtool
gs/ijs/ltmain.sh
gs/ijs/missing
gs/ijs/state.eps
gs/ijs/state.fig
gs/ijs/unistd_.h
gs/ijs/unix.mak
gs/ijs/windows.mak
gs/jbig2dec/.gitignore
gs/jbig2dec/CHANGES
gs/jbig2dec/COPYING
gs/jbig2dec/LICENSE
gs/jbig2dec/Makefile.am
gs/jbig2dec/Makefile.unix
gs/jbig2dec/README
gs/jbig2dec/annex-h.jbig2
gs/jbig2dec/autogen.sh
gs/jbig2dec/config_win32.h
gs/jbig2dec/configure.ac
gs/jbig2dec/getopt.c
gs/jbig2dec/getopt.h
gs/jbig2dec/getopt1.c
gs/jbig2dec/jbig2.c
gs/jbig2dec/jbig2.h
gs/jbig2dec/jbig2_arith.c
gs/jbig2dec/jbig2_arith.h
gs/jbig2dec/jbig2_arith_iaid.c
gs/jbig2dec/jbig2_arith_iaid.h
gs/jbig2dec/jbig2_arith_int.c
gs/jbig2dec/jbig2_arith_int.h
gs/jbig2dec/jbig2_generic.c
gs/jbig2dec/jbig2_generic.h
gs/jbig2dec/jbig2_halftone.c
gs/jbig2dec/jbig2_halftone.h
gs/jbig2dec/jbig2_huffman.c
gs/jbig2dec/jbig2_huffman.h
gs/jbig2dec/jbig2_hufftab.h
gs/jbig2dec/jbig2_image.c
gs/jbig2dec/jbig2_image.h
gs/jbig2dec/jbig2_image_pbm.c
gs/jbig2dec/jbig2_image_png.c
gs/jbig2dec/jbig2_metadata.c
gs/jbig2dec/jbig2_metadata.h
gs/jbig2dec/jbig2_mmr.c
gs/jbig2dec/jbig2_mmr.h
gs/jbig2dec/jbig2_page.c
gs/jbig2dec/jbig2_priv.h
gs/jbig2dec/jbig2_refinement.c
gs/jbig2dec/jbig2_segment.c
gs/jbig2dec/jbig2_symbol_dict.c
gs/jbig2dec/jbig2_symbol_dict.h
gs/jbig2dec/jbig2_text.c
gs/jbig2dec/jbig2_text.h
gs/jbig2dec/jbig2dec.1
gs/jbig2dec/jbig2dec.c
gs/jbig2dec/memcmp.c
gs/jbig2dec/memento.c
gs/jbig2dec/memento.h
gs/jbig2dec/msvc.mak
gs/jbig2dec/os_types.h
gs/jbig2dec/pbm2png.c
gs/jbig2dec/sha1.c
gs/jbig2dec/sha1.h
gs/jbig2dec/snprintf.c
gs/jbig2dec/test_jbig2dec.py
gs/jpeg/Makefile.am
gs/jpeg/Makefile.in
gs/jpeg/README
gs/jpeg/aclocal.m4
gs/jpeg/ar-lib
gs/jpeg/cderror.h
gs/jpeg/cdjpeg.c
gs/jpeg/cdjpeg.h
gs/jpeg/change.log
gs/jpeg/cjpeg.1
gs/jpeg/cjpeg.c
gs/jpeg/ckconfig.c
gs/jpeg/coderules.txt
gs/jpeg/compile
gs/jpeg/config.guess
gs/jpeg/config.sub
gs/jpeg/configure
gs/jpeg/configure.ac
gs/jpeg/depcomp
gs/jpeg/djpeg.1
gs/jpeg/djpeg.c
gs/jpeg/example.c
gs/jpeg/filelist.txt
gs/jpeg/install-sh
gs/jpeg/install.txt
gs/jpeg/jaricom.c
gs/jpeg/jcapimin.c
gs/jpeg/jcapistd.c
gs/jpeg/jcarith.c
gs/jpeg/jccoefct.c
gs/jpeg/jccolor.c
gs/jpeg/jcdctmgr.c
gs/jpeg/jchuff.c
gs/jpeg/jcinit.c
gs/jpeg/jcmainct.c
gs/jpeg/jcmarker.c
gs/jpeg/jcmaster.c
gs/jpeg/jcomapi.c
gs/jpeg/jconfig.bcc
gs/jpeg/jconfig.cfg
gs/jpeg/jconfig.dj
gs/jpeg/jconfig.mac
gs/jpeg/jconfig.manx
gs/jpeg/jconfig.mc6
gs/jpeg/jconfig.sas
gs/jpeg/jconfig.st
gs/jpeg/jconfig.txt
gs/jpeg/jconfig.vc
gs/jpeg/jconfig.vms
gs/jpeg/jconfig.wat
gs/jpeg/jcparam.c
gs/jpeg/jcprepct.c
gs/jpeg/jcsample.c
gs/jpeg/jctrans.c
gs/jpeg/jdapimin.c
gs/jpeg/jdapistd.c
gs/jpeg/jdarith.c
gs/jpeg/jdatadst.c
gs/jpeg/jdatasrc.c
gs/jpeg/jdcoefct.c
gs/jpeg/jdcolor.c
gs/jpeg/jdct.h
gs/jpeg/jddctmgr.c
gs/jpeg/jdhuff.c
gs/jpeg/jdinput.c
gs/jpeg/jdmainct.c
gs/jpeg/jdmarker.c
gs/jpeg/jdmaster.c
gs/jpeg/jdmerge.c
gs/jpeg/jdpostct.c
gs/jpeg/jdsample.c
gs/jpeg/jdtrans.c
gs/jpeg/jerror.c
gs/jpeg/jerror.h
gs/jpeg/jfdctflt.c
gs/jpeg/jfdctfst.c
gs/jpeg/jfdctint.c
gs/jpeg/jidctflt.c
gs/jpeg/jidctfst.c
gs/jpeg/jidctint.c
gs/jpeg/jinclude.h
gs/jpeg/jmemansi.c
gs/jpeg/jmemdos.c
gs/jpeg/jmemdosa.asm
gs/jpeg/jmemmac.c
gs/jpeg/jmemmgr.c
gs/jpeg/jmemname.c
gs/jpeg/jmemnobs.c
gs/jpeg/jmemsys.h
gs/jpeg/jmorecfg.h
gs/jpeg/jpegint.h
gs/jpeg/jpeglib.h
gs/jpeg/jpegtran.1
gs/jpeg/jpegtran.c
gs/jpeg/jquant1.c
gs/jpeg/jquant2.c
gs/jpeg/jutils.c
gs/jpeg/jversion.h
gs/jpeg/libjpeg.map
gs/jpeg/libjpeg.txt
gs/jpeg/ltmain.sh
gs/jpeg/makcjpeg.st
gs/jpeg/makdjpeg.st
gs/jpeg/makeadsw.vc6
gs/jpeg/makeasln.v10
gs/jpeg/makecdep.vc6
gs/jpeg/makecdsp.vc6
gs/jpeg/makecfil.v10
gs/jpeg/makecmak.vc6
gs/jpeg/makecvcx.v10
gs/jpeg/makeddep.vc6
gs/jpeg/makeddsp.vc6
gs/jpeg/makedfil.v10
gs/jpeg/makedmak.vc6
gs/jpeg/makedvcx.v10
gs/jpeg/makefile.ansi
gs/jpeg/makefile.bcc
gs/jpeg/makefile.dj
gs/jpeg/makefile.manx
gs/jpeg/makefile.mc6
gs/jpeg/makefile.mms
gs/jpeg/makefile.sas
gs/jpeg/makefile.unix
gs/jpeg/makefile.vc
gs/jpeg/makefile.vms
gs/jpeg/makefile.wat
gs/jpeg/makejdep.vc6
gs/jpeg/makejdsp.vc6
gs/jpeg/makejdsw.vc6
gs/jpeg/makejfil.v10
gs/jpeg/makejmak.vc6
gs/jpeg/makejsln.v10
gs/jpeg/makejvcx.v10
gs/jpeg/makeproj.mac
gs/jpeg/makerdep.vc6
gs/jpeg/makerdsp.vc6
gs/jpeg/makerfil.v10
gs/jpeg/makermak.vc6
gs/jpeg/makervcx.v10
gs/jpeg/maketdep.vc6
gs/jpeg/maketdsp.vc6
gs/jpeg/maketfil.v10
gs/jpeg/maketmak.vc6
gs/jpeg/maketvcx.v10
gs/jpeg/makewdep.vc6
gs/jpeg/makewdsp.vc6
gs/jpeg/makewfil.v10
gs/jpeg/makewmak.vc6
gs/jpeg/makewvcx.v10
gs/jpeg/makljpeg.st
gs/jpeg/maktjpeg.st
gs/jpeg/makvms.opt
gs/jpeg/missing
gs/jpeg/rdbmp.c
gs/jpeg/rdcolmap.c
gs/jpeg/rdgif.c
gs/jpeg/rdjpgcom.1
gs/jpeg/rdjpgcom.c
gs/jpeg/rdppm.c
gs/jpeg/rdrle.c
gs/jpeg/rdswitch.c
gs/jpeg/rdtarga.c
gs/jpeg/structure.txt
gs/jpeg/testimg.bmp
gs/jpeg/testimg.jpg
gs/jpeg/testimg.ppm
gs/jpeg/testimgp.jpg
gs/jpeg/testorig.jpg
gs/jpeg/testprog.jpg
gs/jpeg/transupp.c
gs/jpeg/transupp.h
gs/jpeg/usage.txt
gs/jpeg/wizard.txt
gs/jpeg/wrbmp.c
gs/jpeg/wrgif.c
gs/jpeg/wrjpgcom.1
gs/jpeg/wrjpgcom.c
gs/jpeg/wrppm.c
gs/jpeg/wrrle.c
gs/jpeg/wrtarga.c
gs/jpegxr/APP.rc
gs/jpegxr/APP.vcproj
gs/jpegxr/COPYRIGHT.txt
gs/jpegxr/DLL.rc
gs/jpegxr/DLL.vcproj
gs/jpegxr/JPEG-XR.sln
gs/jpegxr/Makefile
gs/jpegxr/README.txt
gs/jpegxr/algo.c
gs/jpegxr/api.c
gs/jpegxr/app_resource.h
gs/jpegxr/cr_parse.c
gs/jpegxr/cw_emit.c
gs/jpegxr/dll_resource.h
gs/jpegxr/dllmain.c
gs/jpegxr/file.c
gs/jpegxr/file.h
gs/jpegxr/flags.c
gs/jpegxr/init.c
gs/jpegxr/io.c
gs/jpegxr/jpegxr.c
gs/jpegxr/jpegxr.h
gs/jpegxr/jpegxr_pixelformat.c
gs/jpegxr/jxr_priv.h
gs/jpegxr/my_getopt-1.5/LICENSE
gs/jpegxr/my_getopt-1.5/getopt.h
gs/jpegxr/my_getopt-1.5/my_getopt.c
gs/jpegxr/my_getopt-1.5/my_getopt.h
gs/jpegxr/qp.tab.c
gs/jpegxr/qp.tab.h
gs/jpegxr/qp_lexor.c
gs/jpegxr/qp_lexor.lex
gs/jpegxr/qp_parse.y
gs/jpegxr/r_parse.c
gs/jpegxr/r_strip.c
gs/jpegxr/r_tile_frequency.c
gs/jpegxr/r_tile_spatial.c
gs/jpegxr/sample.qp
gs/jpegxr/stdint_minimal.h
gs/jpegxr/versions-windows.txt
gs/jpegxr/w_emit.c
gs/jpegxr/w_strip.c
gs/jpegxr/w_tile_frequency.c
gs/jpegxr/w_tile_spatial.c
gs/jpegxr/x_strip.c
gs/lcms2/AUTHORS
gs/lcms2/COPYING
gs/lcms2/ChangeLog
gs/lcms2/INSTALL
gs/lcms2/Lib/BC/BC.txt
gs/lcms2/Lib/MS/MS.TXT
gs/lcms2/Makefile.am
gs/lcms2/Makefile.in
gs/lcms2/Projects/.gitignore
gs/lcms2/Projects/BorlandC_5.5/lcms2.rc
gs/lcms2/Projects/BorlandC_5.5/lcmsdll.lk
gs/lcms2/Projects/BorlandC_5.5/lcmsdll.lst
gs/lcms2/Projects/BorlandC_5.5/mklcmsdll.bat
gs/lcms2/Projects/VC2008/jpegicc/jpegicc.vcproj
gs/lcms2/Projects/VC2008/lcms2.rc
gs/lcms2/Projects/VC2008/lcms2.sln
gs/lcms2/Projects/VC2008/lcms2_DLL/lcms2_DLL.vcproj
gs/lcms2/Projects/VC2008/lcms2_static/lcms2_static.vcproj
gs/lcms2/Projects/VC2008/linkicc/linkicc.vcproj
gs/lcms2/Projects/VC2008/psicc/psicc.vcproj
gs/lcms2/Projects/VC2008/resource.h
gs/lcms2/Projects/VC2008/testbed/testbed.vcproj
gs/lcms2/Projects/VC2008/tiffdiff/tiffdiff.vcproj
gs/lcms2/Projects/VC2008/tifficc/tifficc.vcproj
gs/lcms2/Projects/VC2008/transicc/transicc.vcproj
gs/lcms2/Projects/VC2010/jpegicc/jpegicc.vcproj
gs/lcms2/Projects/VC2010/jpegicc/jpegicc.vcxproj
gs/lcms2/Projects/VC2010/jpegicc/jpegicc.vcxproj.filters
gs/lcms2/Projects/VC2010/lcms2.rc
gs/lcms2/Projects/VC2010/lcms2.sln
gs/lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcproj
gs/lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcxproj
gs/lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcxproj.filters
gs/lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcproj
gs/lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcxproj
gs/lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcxproj.filters
gs/lcms2/Projects/VC2010/linkicc/linkicc.vcproj
gs/lcms2/Projects/VC2010/linkicc/linkicc.vcxproj
gs/lcms2/Projects/VC2010/linkicc/linkicc.vcxproj.filters
gs/lcms2/Projects/VC2010/psicc/psicc.vcproj
gs/lcms2/Projects/VC2010/psicc/psicc.vcxproj
gs/lcms2/Projects/VC2010/psicc/psicc.vcxproj.filters
gs/lcms2/Projects/VC2010/resource.h
gs/lcms2/Projects/VC2010/testbed/testbed.vcproj
gs/lcms2/Projects/VC2010/testbed/testbed.vcxproj
gs/lcms2/Projects/VC2010/testbed/testbed.vcxproj.filters
gs/lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcproj
gs/lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcxproj
gs/lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcxproj.filters
gs/lcms2/Projects/VC2010/tifficc/tifficc.vcproj
gs/lcms2/Projects/VC2010/tifficc/tifficc.vcxproj
gs/lcms2/Projects/VC2010/tifficc/tifficc.vcxproj.filters
gs/lcms2/Projects/VC2010/transicc/transicc.vcproj
gs/lcms2/Projects/VC2010/transicc/transicc.vcxproj
gs/lcms2/Projects/VC2010/transicc/transicc.vcxproj.filters
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcproj
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj.filters
gs/lcms2/Projects/VC2012/lcms2.rc
gs/lcms2/Projects/VC2012/lcms2.sln
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcproj
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj.filters
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcproj
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj.filters
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcproj
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcxproj
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcxproj.filters
gs/lcms2/Projects/VC2012/psicc/psicc.vcproj
gs/lcms2/Projects/VC2012/psicc/psicc.vcxproj
gs/lcms2/Projects/VC2012/psicc/psicc.vcxproj.filters
gs/lcms2/Projects/VC2012/resource.h
gs/lcms2/Projects/VC2012/testbed/testbed.vcproj
gs/lcms2/Projects/VC2012/testbed/testbed.vcxproj
gs/lcms2/Projects/VC2012/testbed/testbed.vcxproj.filters
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcproj
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj.filters
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcproj
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcxproj
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcxproj.filters
gs/lcms2/Projects/VC2012/transicc/transicc.vcproj
gs/lcms2/Projects/VC2012/transicc/transicc.vcxproj
gs/lcms2/Projects/VC2012/transicc/transicc.vcxproj.filters
gs/lcms2/Projects/cppcheck/lcms2.cppcheck
gs/lcms2/Projects/mac/._.DS_Store
gs/lcms2/Projects/mac/LittleCMS/._.DS_Store
gs/lcms2/Projects/mac/LittleCMS/English.lproj/InfoPlist.strings
gs/lcms2/Projects/mac/LittleCMS/Info.plist
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.mode1v3
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.pbxuser
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/project.pbxproj
gs/lcms2/Projects/mac/LittleCMS/LittleCMS_Prefix.pch
gs/lcms2/Projects/mac/LittleCMS/TestBed-Info.plist
gs/lcms2/README.1ST
gs/lcms2/aclocal.m4
gs/lcms2/autogen.sh
gs/lcms2/config.guess
gs/lcms2/config.sub
gs/lcms2/configure
gs/lcms2/configure.ac
gs/lcms2/depcomp
gs/lcms2/doc/LittleCMS2.6 API.pdf
gs/lcms2/doc/LittleCMS2.6 Plugin API.pdf
gs/lcms2/doc/LittleCMS2.6 tutorial.pdf
gs/lcms2/doc/src.zip
gs/lcms2/include/Makefile.am
gs/lcms2/include/Makefile.in
gs/lcms2/include/lcms2.h
gs/lcms2/include/lcms2_plugin.h
gs/lcms2/install-sh
gs/lcms2/lcms2.pc.in
gs/lcms2/ltmain.sh
gs/lcms2/m4/acx_pthread.m4
gs/lcms2/missing
gs/lcms2/src/Makefile.am
gs/lcms2/src/Makefile.in
gs/lcms2/src/cmscam02.c
gs/lcms2/src/cmscgats.c
gs/lcms2/src/cmscnvrt.c
gs/lcms2/src/cmserr.c
gs/lcms2/src/cmsgamma.c
gs/lcms2/src/cmsgmt.c
gs/lcms2/src/cmshalf.c
gs/lcms2/src/cmsintrp.c
gs/lcms2/src/cmsio0.c
gs/lcms2/src/cmsio1.c
gs/lcms2/src/cmslut.c
gs/lcms2/src/cmsmd5.c
gs/lcms2/src/cmsmtrx.c
gs/lcms2/src/cmsnamed.c
gs/lcms2/src/cmsopt.c
gs/lcms2/src/cmspack.c
gs/lcms2/src/cmspcs.c
gs/lcms2/src/cmsplugin.c
gs/lcms2/src/cmsps2.c
gs/lcms2/src/cmssamp.c
gs/lcms2/src/cmssm.c
gs/lcms2/src/cmstypes.c
gs/lcms2/src/cmsvirt.c
gs/lcms2/src/cmswtpnt.c
gs/lcms2/src/cmsxform.c
gs/lcms2/src/extra_xform.h
gs/lcms2/src/lcms2.def
gs/lcms2/src/lcms2_internal.h
gs/lcms2/testbed/Makefile.am
gs/lcms2/testbed/Makefile.in
gs/lcms2/testbed/bad.icc
gs/lcms2/testbed/ibm-t61.icc
gs/lcms2/testbed/new.icc
gs/lcms2/testbed/test1.icc
gs/lcms2/testbed/test2.icc
gs/lcms2/testbed/test3.icc
gs/lcms2/testbed/test4.icc
gs/lcms2/testbed/test5.icc
gs/lcms2/testbed/testcms2.c
gs/lcms2/testbed/testcms2.h
gs/lcms2/testbed/testplugin.c
gs/lcms2/testbed/testthread.cpp
gs/lcms2/testbed/toosmall.icc
gs/lcms2/testbed/zoo_icc.c
gs/lcms2/utils/common/utils.h
gs/lcms2/utils/common/vprf.c
gs/lcms2/utils/common/xgetopt.c
gs/lcms2/utils/delphi/delphidemo.dpr
gs/lcms2/utils/delphi/delphidemo.dproj
gs/lcms2/utils/delphi/delphidemo.res
gs/lcms2/utils/delphi/demo1.dfm
gs/lcms2/utils/delphi/demo1.pas
gs/lcms2/utils/delphi/lcms2.dll
gs/lcms2/utils/delphi/lcms2dll.pas
gs/lcms2/utils/jpgicc/Makefile.am
gs/lcms2/utils/jpgicc/Makefile.in
gs/lcms2/utils/jpgicc/iccjpeg.c
gs/lcms2/utils/jpgicc/iccjpeg.h
gs/lcms2/utils/jpgicc/jpgicc.1
gs/lcms2/utils/jpgicc/jpgicc.c
gs/lcms2/utils/linkicc/Makefile.am
gs/lcms2/utils/linkicc/Makefile.in
gs/lcms2/utils/linkicc/linkicc.1
gs/lcms2/utils/linkicc/linkicc.c
gs/lcms2/utils/matlab/icctrans.c
gs/lcms2/utils/matlab/lcms_rsp
gs/lcms2/utils/psicc/Makefile.am
gs/lcms2/utils/psicc/Makefile.in
gs/lcms2/utils/psicc/psicc.1
gs/lcms2/utils/psicc/psicc.c
gs/lcms2/utils/samples/Makefile.am
gs/lcms2/utils/samples/Makefile.in
gs/lcms2/utils/samples/itufax.c
gs/lcms2/utils/samples/mkcmy.c
gs/lcms2/utils/samples/mkgrayer.c
gs/lcms2/utils/samples/mktiff8.c
gs/lcms2/utils/samples/roundtrip.c
gs/lcms2/utils/samples/vericc.c
gs/lcms2/utils/samples/wtpt.1
gs/lcms2/utils/samples/wtpt.c
gs/lcms2/utils/tificc/Makefile.am
gs/lcms2/utils/tificc/Makefile.in
gs/lcms2/utils/tificc/tifdiff.c
gs/lcms2/utils/tificc/tificc.1
gs/lcms2/utils/tificc/tificc.c
gs/lcms2/utils/transicc/Makefile.am
gs/lcms2/utils/transicc/Makefile.in
gs/lcms2/utils/transicc/transicc.1
gs/lcms2/utils/transicc/transicc.c
gs/lib/EndOfTask.ps
gs/lib/FAPIconfig-FCO
gs/lib/FCOfontmap-PCLPS3
gs/lib/FCOfontmap-PS3
gs/lib/Fontmap.ATB
gs/lib/Fontmap.ATM
gs/lib/Fontmap.OS2
gs/lib/Fontmap.OSF
gs/lib/Fontmap.SGI
gs/lib/Fontmap.Sol
gs/lib/Fontmap.URW-136.T1
gs/lib/Fontmap.URW-136.TT
gs/lib/Fontmap.Ult
gs/lib/Fontmap.VMS
gs/lib/Info-macos.plist
gs/lib/PDFA_def.ps
gs/lib/PDFX_def.ps
gs/lib/acctest.ps
gs/lib/addxchar.ps
gs/lib/afmdiff.awk
gs/lib/align.ps
gs/lib/bj8.rpd
gs/lib/bj8gc12f.upp
gs/lib/bj8hg12f.upp
gs/lib/bj8oh06n.upp
gs/lib/bj8pa06n.upp
gs/lib/bj8pp12f.upp
gs/lib/bj8ts06n.upp
gs/lib/bjc610a0.upp
gs/lib/bjc610a1.upp
gs/lib/bjc610a2.upp
gs/lib/bjc610a3.upp
gs/lib/bjc610a4.upp
gs/lib/bjc610a5.upp
gs/lib/bjc610a6.upp
gs/lib/bjc610a7.upp
gs/lib/bjc610a8.upp
gs/lib/bjc610b1.upp
gs/lib/bjc610b2.upp
gs/lib/bjc610b3.upp
gs/lib/bjc610b4.upp
gs/lib/bjc610b6.upp
gs/lib/bjc610b7.upp
gs/lib/bjc610b8.upp
gs/lib/caption.ps
gs/lib/cat.ps
gs/lib/cbjc600.ppd
gs/lib/cbjc800.ppd
gs/lib/cdj550.upp
gs/lib/cdj690.upp
gs/lib/cdj690ec.upp
gs/lib/cid2code.ps
gs/lib/decrypt.ps
gs/lib/dnj750c.upp
gs/lib/dnj750m.upp
gs/lib/docie.ps
gs/lib/dvipdf
gs/lib/eps2eps
gs/lib/eps2eps.bat
gs/lib/eps2eps.cmd
gs/lib/font2c
gs/lib/font2c.bat
gs/lib/font2c.cmd
gs/lib/font2c.ps
gs/lib/font2pcl.ps
gs/lib/ghostpdf.README
gs/lib/ghostpdf.cat
gs/lib/ghostpdf.inf
gs/lib/ghostpdf.ppd
gs/lib/gs_ce_e.ps
gs/lib/gs_cmdl.ps
gs/lib/gs_il2_e.ps
gs/lib/gs_kanji.ps
gs/lib/gs_ksb_e.ps
gs/lib/gs_l.xbm
gs/lib/gs_l.xpm
gs/lib/gs_l_m.xbm
gs/lib/gs_lgo_e.ps
gs/lib/gs_lgx_e.ps
gs/lib/gs_m.xbm
gs/lib/gs_m.xpm
gs/lib/gs_m_m.xbm
gs/lib/gs_pfile.ps
gs/lib/gs_rdlin.ps
gs/lib/gs_s.xbm
gs/lib/gs_s.xpm
gs/lib/gs_s_m.xbm
gs/lib/gs_t.xbm
gs/lib/gs_t.xpm
gs/lib/gs_t_m.xbm
gs/lib/gs_wl1_e.ps
gs/lib/gs_wl2_e.ps
gs/lib/gs_wl5_e.ps
gs/lib/gsbj
gs/lib/gsbj.bat
gs/lib/gsdj
gs/lib/gsdj.bat
gs/lib/gsdj500
gs/lib/gsdj500.bat
gs/lib/gslj
gs/lib/gslj.bat
gs/lib/gslp
gs/lib/gslp.bat
gs/lib/gslp.ps
gs/lib/gsnd
gs/lib/gsnd.bat
gs/lib/gsndt.bat
gs/lib/gsnup.ps
gs/lib/gssetgs.bat
gs/lib/gssetgs32.bat
gs/lib/gssetgs64.bat
gs/lib/gst.bat
gs/lib/gstt.bat
gs/lib/ht_ccsto.ps
gs/lib/image-qa.ps
gs/lib/impath.ps
gs/lib/jispaper.ps
gs/lib/jobseparator.ps
gs/lib/landscap.ps
gs/lib/level1.ps
gs/lib/lines.ps
gs/lib/lp386.bat
gs/lib/lp386r2.bat
gs/lib/lpgs.bat
gs/lib/lpr2.bat
gs/lib/lprsetup.sh
gs/lib/markhint.ps
gs/lib/markpath.ps
gs/lib/mkcidfm.ps
gs/lib/necp2x.upp
gs/lib/necp2x6.upp
gs/lib/opdfread.ps
gs/lib/packfile.ps
gs/lib/pcharstr.ps
gs/lib/pdf2dsc
gs/lib/pdf2dsc.bat
gs/lib/pdf2dsc.ps
gs/lib/pdf2ps
gs/lib/pdf2ps.bat
gs/lib/pdf2ps.cmd
gs/lib/pdfwrite.ps
gs/lib/pf2afm
gs/lib/pf2afm.bat
gs/lib/pf2afm.cmd
gs/lib/pf2afm.ps
gs/lib/pfbtopfa
gs/lib/pfbtopfa.bat
gs/lib/pfbtopfa.ps
gs/lib/pftogsf.bat
gs/lib/ppath.ps
gs/lib/pphs
gs/lib/pphs.ps
gs/lib/prfont.ps
gs/lib/printafm
gs/lib/printafm.ps
gs/lib/ps2ai.ps
gs/lib/ps2ascii
gs/lib/ps2ascii.bat
gs/lib/ps2ascii.cmd
gs/lib/ps2ascii.ps
gs/lib/ps2epsi
gs/lib/ps2epsi.bat
gs/lib/ps2epsi.cmd
gs/lib/ps2epsi.ps
gs/lib/ps2pdf
gs/lib/ps2pdf.bat
gs/lib/ps2pdf.cmd
gs/lib/ps2pdf12
gs/lib/ps2pdf12.bat
gs/lib/ps2pdf12.cmd
gs/lib/ps2pdf13
gs/lib/ps2pdf13.bat
gs/lib/ps2pdf13.cmd
gs/lib/ps2pdf14
gs/lib/ps2pdf14.bat
gs/lib/ps2pdf14.cmd
gs/lib/ps2pdfwr
gs/lib/ps2pdfxx.bat
gs/lib/ps2ps
gs/lib/ps2ps.bat
gs/lib/ps2ps.cmd
gs/lib/ps2ps2
gs/lib/ps2ps2.bat
gs/lib/ps2ps2.cmd
gs/lib/quit.ps
gs/lib/ras1.upp
gs/lib/ras24.upp
gs/lib/ras3.upp
gs/lib/ras32.upp
gs/lib/ras4.upp
gs/lib/ras8m.upp
gs/lib/rinkj-2200-setup
gs/lib/rollconv.ps
gs/lib/showchar.ps
gs/lib/showpage.ps
gs/lib/st640ih.upp
gs/lib/st640ihg.upp
gs/lib/st640p.upp
gs/lib/st640pg.upp
gs/lib/st640pl.upp
gs/lib/st640plg.upp
gs/lib/stc.upp
gs/lib/stc1520h.upp
gs/lib/stc2.upp
gs/lib/stc200_h.upp
gs/lib/stc2_h.upp
gs/lib/stc2s_h.upp
gs/lib/stc300.upp
gs/lib/stc300bl.upp
gs/lib/stc300bm.upp
gs/lib/stc500p.upp
gs/lib/stc500ph.upp
gs/lib/stc600ih.upp
gs/lib/stc600p.upp
gs/lib/stc600pl.upp
gs/lib/stc640p.upp
gs/lib/stc800ih.upp
gs/lib/stc800p.upp
gs/lib/stc800pl.upp
gs/lib/stc_h.upp
gs/lib/stc_l.upp
gs/lib/stcany.upp
gs/lib/stcany_h.upp
gs/lib/stcinfo.ps
gs/lib/stcolor.ps
gs/lib/stocht.ps
gs/lib/traceimg.ps
gs/lib/traceop.ps
gs/lib/type1enc.ps
gs/lib/type1ops.ps
gs/lib/uninfo.ps
gs/lib/unix-lpr.sh
gs/lib/unprot.ps
gs/lib/viewcmyk.ps
gs/lib/viewgif.ps
gs/lib/viewjpeg.ps
gs/lib/viewmiff.ps
gs/lib/viewpbm.ps
gs/lib/viewpcx.ps
gs/lib/viewps2a.ps
gs/lib/viewraw.ps
gs/lib/viewrgb.ps
gs/lib/wftopfa
gs/lib/wftopfa.ps
gs/lib/winmaps.ps
gs/lib/wmakebat.bat
gs/lib/wrfont.ps
gs/lib/zeroline.ps
gs/libpng/ANNOUNCE
gs/libpng/CHANGES
gs/libpng/CMakeLists.txt
gs/libpng/INSTALL
gs/libpng/LICENSE
gs/libpng/Makefile.am
gs/libpng/Makefile.in
gs/libpng/README
gs/libpng/TODO
gs/libpng/aclocal.m4
gs/libpng/arm/arm_init.c
gs/libpng/arm/filter_neon.S
gs/libpng/arm/filter_neon_intrinsics.c
gs/libpng/autogen.sh
gs/libpng/compile
gs/libpng/config.guess
gs/libpng/config.h.in
gs/libpng/config.sub
gs/libpng/configure
gs/libpng/configure.ac
gs/libpng/contrib/README.txt
gs/libpng/contrib/arm-neon/README
gs/libpng/contrib/arm-neon/android-ndk.c
gs/libpng/contrib/arm-neon/linux-auxv.c
gs/libpng/contrib/arm-neon/linux.c
gs/libpng/contrib/conftest/README
gs/libpng/contrib/conftest/read.dfa
gs/libpng/contrib/conftest/s_read.dfa
gs/libpng/contrib/conftest/s_write.dfa
gs/libpng/contrib/conftest/simple.dfa
gs/libpng/contrib/conftest/write.dfa
gs/libpng/contrib/examples/README.txt
gs/libpng/contrib/examples/iccfrompng.c
gs/libpng/contrib/examples/pngpixel.c
gs/libpng/contrib/examples/pngtopng.c
gs/libpng/contrib/gregbook/COPYING
gs/libpng/contrib/gregbook/LICENSE
gs/libpng/contrib/gregbook/Makefile.mingw32
gs/libpng/contrib/gregbook/Makefile.sgi
gs/libpng/contrib/gregbook/Makefile.unx
gs/libpng/contrib/gregbook/Makefile.w32
gs/libpng/contrib/gregbook/README
gs/libpng/contrib/gregbook/makevms.com
gs/libpng/contrib/gregbook/readpng.c
gs/libpng/contrib/gregbook/readpng.h
gs/libpng/contrib/gregbook/readpng2.c
gs/libpng/contrib/gregbook/readpng2.h
gs/libpng/contrib/gregbook/readppm.c
gs/libpng/contrib/gregbook/rpng-win.c
gs/libpng/contrib/gregbook/rpng-x.c
gs/libpng/contrib/gregbook/rpng2-win.c
gs/libpng/contrib/gregbook/rpng2-x.c
gs/libpng/contrib/gregbook/toucan.png
gs/libpng/contrib/gregbook/wpng.c
gs/libpng/contrib/gregbook/writepng.c
gs/libpng/contrib/gregbook/writepng.h
gs/libpng/contrib/libtests/fakepng.c
gs/libpng/contrib/libtests/gentests.sh
gs/libpng/contrib/libtests/makepng.c
gs/libpng/contrib/libtests/pngimage.c
gs/libpng/contrib/libtests/pngstest.c
gs/libpng/contrib/libtests/pngunknown.c
gs/libpng/contrib/libtests/pngvalid.c
gs/libpng/contrib/libtests/readpng.c
gs/libpng/contrib/libtests/tarith.c
gs/libpng/contrib/libtests/timepng.c
gs/libpng/contrib/pngminim/README
gs/libpng/contrib/pngminim/decoder/README
gs/libpng/contrib/pngminim/decoder/makefile
gs/libpng/contrib/pngminim/decoder/pngusr.dfa
gs/libpng/contrib/pngminim/decoder/pngusr.h
gs/libpng/contrib/pngminim/encoder/README
gs/libpng/contrib/pngminim/encoder/makefile
gs/libpng/contrib/pngminim/encoder/pngusr.dfa
gs/libpng/contrib/pngminim/encoder/pngusr.h
gs/libpng/contrib/pngminim/preader/README
gs/libpng/contrib/pngminim/preader/makefile
gs/libpng/contrib/pngminim/preader/pngusr.dfa
gs/libpng/contrib/pngminim/preader/pngusr.h
gs/libpng/contrib/pngminus/README
gs/libpng/contrib/pngminus/makefile.std
gs/libpng/contrib/pngminus/makefile.tc3
gs/libpng/contrib/pngminus/makevms.com
gs/libpng/contrib/pngminus/png2pnm.bat
gs/libpng/contrib/pngminus/png2pnm.c
gs/libpng/contrib/pngminus/png2pnm.sh
gs/libpng/contrib/pngminus/pngminus.bat
gs/libpng/contrib/pngminus/pngminus.sh
gs/libpng/contrib/pngminus/pnm2png.bat
gs/libpng/contrib/pngminus/pnm2png.c
gs/libpng/contrib/pngminus/pnm2png.sh
gs/libpng/contrib/pngsuite/README
gs/libpng/contrib/pngsuite/basn0g01.png
gs/libpng/contrib/pngsuite/basn0g02.png
gs/libpng/contrib/pngsuite/basn0g04.png
gs/libpng/contrib/pngsuite/basn0g08.png
gs/libpng/contrib/pngsuite/basn0g16.png
gs/libpng/contrib/pngsuite/basn2c08.png
gs/libpng/contrib/pngsuite/basn2c16.png
gs/libpng/contrib/pngsuite/basn3p01.png
gs/libpng/contrib/pngsuite/basn3p02.png
gs/libpng/contrib/pngsuite/basn3p04.png
gs/libpng/contrib/pngsuite/basn3p08.png
gs/libpng/contrib/pngsuite/basn4a08.png
gs/libpng/contrib/pngsuite/basn4a16.png
gs/libpng/contrib/pngsuite/basn6a08.png
gs/libpng/contrib/pngsuite/basn6a16.png
gs/libpng/contrib/pngsuite/ftbbn0g01.png
gs/libpng/contrib/pngsuite/ftbbn0g02.png
gs/libpng/contrib/pngsuite/ftbbn0g04.png
gs/libpng/contrib/pngsuite/ftbbn2c16.png
gs/libpng/contrib/pngsuite/ftbbn3p08.png
gs/libpng/contrib/pngsuite/ftbgn2c16.png
gs/libpng/contrib/pngsuite/ftbgn3p08.png
gs/libpng/contrib/pngsuite/ftbrn2c08.png
gs/libpng/contrib/pngsuite/ftbwn0g16.png
gs/libpng/contrib/pngsuite/ftbwn3p08.png
gs/libpng/contrib/pngsuite/ftbyn3p08.png
gs/libpng/contrib/pngsuite/ftp0n0g08.png
gs/libpng/contrib/pngsuite/ftp0n2c08.png
gs/libpng/contrib/pngsuite/ftp0n3p08.png
gs/libpng/contrib/pngsuite/ftp1n3p08.png
gs/libpng/contrib/tools/README.txt
gs/libpng/contrib/tools/checksum-icc.c
gs/libpng/contrib/tools/chkfmt
gs/libpng/contrib/tools/cvtcolor.c
gs/libpng/contrib/tools/intgamma.sh
gs/libpng/contrib/tools/makesRGB.c
gs/libpng/contrib/tools/png-fix-itxt.c
gs/libpng/contrib/tools/pngfix.c
gs/libpng/contrib/tools/sRGB.h
gs/libpng/contrib/visupng/PngFile.c
gs/libpng/contrib/visupng/PngFile.h
gs/libpng/contrib/visupng/README.txt
gs/libpng/contrib/visupng/VisualPng.c
gs/libpng/contrib/visupng/VisualPng.dsp
gs/libpng/contrib/visupng/VisualPng.dsw
gs/libpng/contrib/visupng/VisualPng.ico
gs/libpng/contrib/visupng/VisualPng.png
gs/libpng/contrib/visupng/VisualPng.rc
gs/libpng/contrib/visupng/cexcept.h
gs/libpng/contrib/visupng/resource.h
gs/libpng/depcomp
gs/libpng/example.c
gs/libpng/install-sh
gs/libpng/libpng-config.in
gs/libpng/libpng-manual.txt
gs/libpng/libpng.3
gs/libpng/libpng.pc.in
gs/libpng/libpngpf.3
gs/libpng/ltmain.sh
gs/libpng/missing
gs/libpng/png.5
gs/libpng/png.c
gs/libpng/png.h
gs/libpng/pngbar.jpg
gs/libpng/pngbar.png
gs/libpng/pngconf.h
gs/libpng/pngdebug.h
gs/libpng/pngerror.c
gs/libpng/pngget.c
gs/libpng/pnginfo.h
gs/libpng/pngmem.c
gs/libpng/pngnow.png
gs/libpng/pngpread.c
gs/libpng/pngpriv.h
gs/libpng/pngread.c
gs/libpng/pngrio.c
gs/libpng/pngrtran.c
gs/libpng/pngrutil.c
gs/libpng/pngset.c
gs/libpng/pngstruct.h
gs/libpng/pngtest.c
gs/libpng/pngtest.png
gs/libpng/pngtrans.c
gs/libpng/pngusr.dfa
gs/libpng/pngwio.c
gs/libpng/pngwrite.c
gs/libpng/pngwtran.c
gs/libpng/pngwutil.c
gs/libpng/projects/owatcom/libpng.tgt
gs/libpng/projects/owatcom/libpng.wpj
gs/libpng/projects/owatcom/pngconfig.mak
gs/libpng/projects/owatcom/pngstest.tgt
gs/libpng/projects/owatcom/pngtest.tgt
gs/libpng/projects/owatcom/pngvalid.tgt
gs/libpng/projects/visualc71/PRJ0041.mak
gs/libpng/projects/visualc71/README.txt
gs/libpng/projects/visualc71/README_zlib.txt
gs/libpng/projects/visualc71/libpng.sln
gs/libpng/projects/visualc71/libpng.vcproj
gs/libpng/projects/visualc71/pngtest.vcproj
gs/libpng/projects/visualc71/zlib.vcproj
gs/libpng/projects/vstudio/WARNING
gs/libpng/projects/vstudio/libpng/libpng.vcxproj
gs/libpng/projects/vstudio/pnglibconf/pnglibconf.vcxproj
gs/libpng/projects/vstudio/pngstest/pngstest.vcxproj
gs/libpng/projects/vstudio/pngtest/pngtest.vcxproj
gs/libpng/projects/vstudio/pngunknown/pngunknown.vcxproj
gs/libpng/projects/vstudio/pngvalid/pngvalid.vcxproj
gs/libpng/projects/vstudio/readme.txt
gs/libpng/projects/vstudio/vstudio.sln
gs/libpng/projects/vstudio/zlib.props
gs/libpng/projects/vstudio/zlib/zlib.vcxproj
gs/libpng/scripts/README.txt
gs/libpng/scripts/SCOPTIONS.ppc
gs/libpng/scripts/checksym.awk
gs/libpng/scripts/def.c
gs/libpng/scripts/descrip.mms
gs/libpng/scripts/dfn.awk
gs/libpng/scripts/intprefix.c
gs/libpng/scripts/libpng-config-body.in
gs/libpng/scripts/libpng-config-head.in
gs/libpng/scripts/libpng.pc.in
gs/libpng/scripts/libtool.m4
gs/libpng/scripts/ltoptions.m4
gs/libpng/scripts/ltsugar.m4
gs/libpng/scripts/ltversion.m4
gs/libpng/scripts/lt~obsolete.m4
gs/libpng/scripts/macro.lst
gs/libpng/scripts/makefile.32sunu
gs/libpng/scripts/makefile.64sunu
gs/libpng/scripts/makefile.acorn
gs/libpng/scripts/makefile.aix
gs/libpng/scripts/makefile.amiga
gs/libpng/scripts/makefile.atari
gs/libpng/scripts/makefile.bc32
gs/libpng/scripts/makefile.beos
gs/libpng/scripts/makefile.bor
gs/libpng/scripts/makefile.cegcc
gs/libpng/scripts/makefile.darwin
gs/libpng/scripts/makefile.dec
gs/libpng/scripts/makefile.dj2
gs/libpng/scripts/makefile.freebsd
gs/libpng/scripts/makefile.gcc
gs/libpng/scripts/makefile.hp64
gs/libpng/scripts/makefile.hpgcc
gs/libpng/scripts/makefile.hpux
gs/libpng/scripts/makefile.ibmc
gs/libpng/scripts/makefile.intel
gs/libpng/scripts/makefile.knr
gs/libpng/scripts/makefile.linux
gs/libpng/scripts/makefile.mips
gs/libpng/scripts/makefile.msc
gs/libpng/scripts/makefile.msys
gs/libpng/scripts/makefile.ne12bsd
gs/libpng/scripts/makefile.netbsd
gs/libpng/scripts/makefile.openbsd
gs/libpng/scripts/makefile.sco
gs/libpng/scripts/makefile.sggcc
gs/libpng/scripts/makefile.sgi
gs/libpng/scripts/makefile.so9
gs/libpng/scripts/makefile.solaris
gs/libpng/scripts/makefile.solaris-x86
gs/libpng/scripts/makefile.std
gs/libpng/scripts/makefile.sunos
gs/libpng/scripts/makefile.tc3
gs/libpng/scripts/makefile.vcwin32
gs/libpng/scripts/makevms.com
gs/libpng/scripts/options.awk
gs/libpng/scripts/pnglibconf.dfa
gs/libpng/scripts/pnglibconf.h.prebuilt
gs/libpng/scripts/pnglibconf.mak
gs/libpng/scripts/pngwin.rc
gs/libpng/scripts/prefix.c
gs/libpng/scripts/smakefile.ppc
gs/libpng/scripts/sym.c
gs/libpng/scripts/symbols.c
gs/libpng/scripts/symbols.def
gs/libpng/scripts/vers.c
gs/libpng/test-driver
gs/libpng/tests/pngimage-full
gs/libpng/tests/pngimage-quick
gs/libpng/tests/pngstest
gs/libpng/tests/pngstest-0g01
gs/libpng/tests/pngstest-0g02
gs/libpng/tests/pngstest-0g04
gs/libpng/tests/pngstest-0g08
gs/libpng/tests/pngstest-0g16
gs/libpng/tests/pngstest-2c08
gs/libpng/tests/pngstest-2c16
gs/libpng/tests/pngstest-3p01
gs/libpng/tests/pngstest-3p02
gs/libpng/tests/pngstest-3p04
gs/libpng/tests/pngstest-3p08
gs/libpng/tests/pngstest-4a08
gs/libpng/tests/pngstest-4a16
gs/libpng/tests/pngstest-6a08
gs/libpng/tests/pngstest-6a16
gs/libpng/tests/pngstest-error
gs/libpng/tests/pngtest
gs/libpng/tests/pngunknown-IDAT
gs/libpng/tests/pngunknown-discard
gs/libpng/tests/pngunknown-if-safe
gs/libpng/tests/pngunknown-sAPI
gs/libpng/tests/pngunknown-sTER
gs/libpng/tests/pngunknown-save
gs/libpng/tests/pngunknown-vpAg
gs/libpng/tests/pngvalid-gamma-16-to-8
gs/libpng/tests/pngvalid-gamma-alpha-mode
gs/libpng/tests/pngvalid-gamma-background
gs/libpng/tests/pngvalid-gamma-expand16-alpha-mode
gs/libpng/tests/pngvalid-gamma-expand16-background
gs/libpng/tests/pngvalid-gamma-expand16-transform
gs/libpng/tests/pngvalid-gamma-sbit
gs/libpng/tests/pngvalid-gamma-threshold
gs/libpng/tests/pngvalid-gamma-transform
gs/libpng/tests/pngvalid-progressive-interlace-size
gs/libpng/tests/pngvalid-progressive-interlace-standard
gs/libpng/tests/pngvalid-progressive-interlace-transform
gs/libpng/tests/pngvalid-progressive-standard
gs/libpng/tests/pngvalid-standard
gs/man/de/dvipdf.1
gs/man/de/font2c.1
gs/man/de/gsnd.1
gs/man/de/pdf2dsc.1
gs/man/de/pdf2ps.1
gs/man/de/printafm.1
gs/man/de/ps2ascii.1
gs/man/de/ps2pdf.1
gs/man/de/ps2ps.1
gs/man/de/wftopfa.1
gs/man/dvipdf.1
gs/man/eps2eps.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/openjpeg/AUTHORS
gs/openjpeg/CHANGES
gs/openjpeg/LICENSE
gs/openjpeg/NEWS
gs/openjpeg/THANKS
gs/openjpeg/src/lib/openjp2/CMakeLists.txt
gs/openjpeg/src/lib/openjp2/bio.c
gs/openjpeg/src/lib/openjp2/bio.h
gs/openjpeg/src/lib/openjp2/cidx_manager.c
gs/openjpeg/src/lib/openjp2/cidx_manager.h
gs/openjpeg/src/lib/openjp2/cio.c
gs/openjpeg/src/lib/openjp2/cio.h
gs/openjpeg/src/lib/openjp2/dwt.c
gs/openjpeg/src/lib/openjp2/dwt.h
gs/openjpeg/src/lib/openjp2/event.c
gs/openjpeg/src/lib/openjp2/event.h
gs/openjpeg/src/lib/openjp2/function_list.c
gs/openjpeg/src/lib/openjp2/function_list.h
gs/openjpeg/src/lib/openjp2/image.c
gs/openjpeg/src/lib/openjp2/image.h
gs/openjpeg/src/lib/openjp2/indexbox_manager.h
gs/openjpeg/src/lib/openjp2/invert.c
gs/openjpeg/src/lib/openjp2/invert.h
gs/openjpeg/src/lib/openjp2/j2k.c
gs/openjpeg/src/lib/openjp2/j2k.h
gs/openjpeg/src/lib/openjp2/jp2.c
gs/openjpeg/src/lib/openjp2/jp2.h
gs/openjpeg/src/lib/openjp2/libopenjp2.pc.cmake.in
gs/openjpeg/src/lib/openjp2/mct.c
gs/openjpeg/src/lib/openjp2/mct.h
gs/openjpeg/src/lib/openjp2/mqc.c
gs/openjpeg/src/lib/openjp2/mqc.h
gs/openjpeg/src/lib/openjp2/openjpeg.c
gs/openjpeg/src/lib/openjp2/openjpeg.h
gs/openjpeg/src/lib/openjp2/opj_clock.c
gs/openjpeg/src/lib/openjp2/opj_clock.h
gs/openjpeg/src/lib/openjp2/opj_codec.h
gs/openjpeg/src/lib/openjp2/opj_config.h
gs/openjpeg/src/lib/openjp2/opj_config.h.cmake.in
gs/openjpeg/src/lib/openjp2/opj_config_private.h
gs/openjpeg/src/lib/openjp2/opj_config_private.h.cmake.in
gs/openjpeg/src/lib/openjp2/opj_includes.h
gs/openjpeg/src/lib/openjp2/opj_intmath.h
gs/openjpeg/src/lib/openjp2/opj_inttypes.h
gs/openjpeg/src/lib/openjp2/opj_malloc.h
gs/openjpeg/src/lib/openjp2/opj_stdint.h
gs/openjpeg/src/lib/openjp2/phix_manager.c
gs/openjpeg/src/lib/openjp2/pi.c
gs/openjpeg/src/lib/openjp2/pi.h
gs/openjpeg/src/lib/openjp2/ppix_manager.c
gs/openjpeg/src/lib/openjp2/raw.c
gs/openjpeg/src/lib/openjp2/raw.h
gs/openjpeg/src/lib/openjp2/t1.c
gs/openjpeg/src/lib/openjp2/t1.h
gs/openjpeg/src/lib/openjp2/t1_generate_luts.c
gs/openjpeg/src/lib/openjp2/t1_luts.h
gs/openjpeg/src/lib/openjp2/t2.c
gs/openjpeg/src/lib/openjp2/t2.h
gs/openjpeg/src/lib/openjp2/tcd.c
gs/openjpeg/src/lib/openjp2/tcd.h
gs/openjpeg/src/lib/openjp2/tgt.c
gs/openjpeg/src/lib/openjp2/tgt.h
gs/openjpeg/src/lib/openjp2/thix_manager.c
gs/openjpeg/src/lib/openjp2/tpix_manager.c
gs/psi/apitest.c
gs/psi/bfont.h
gs/psi/btoken.h
gs/psi/dmmain.c
gs/psi/dmmain.r
gs/psi/dpmain.c
gs/psi/dscparse.c
gs/psi/dscparse.h
gs/psi/dstack.h
gs/psi/dw32c.def
gs/psi/dw64c.def
gs/psi/dwdll.c
gs/psi/dwdll.h
gs/psi/dwimg.c
gs/psi/dwimg.h
gs/psi/dwmain.c
gs/psi/dwmain.rc
gs/psi/dwmain32.def
gs/psi/dwmain64.def
gs/psi/dwmainc.c
gs/psi/dwnodll.c
gs/psi/dwreg.c
gs/psi/dwreg.h
gs/psi/dwres.h
gs/psi/dwsetup.def
gs/psi/dwsetup_x64.manifest
gs/psi/dwsetup_x86.manifest
gs/psi/dwtext.c
gs/psi/dwtext.h
gs/psi/dwtrace.c
gs/psi/dwtrace.h
gs/psi/dwuninst.def
gs/psi/dwuninst_x64.manifest
gs/psi/dwuninst_x86.manifest
gs/psi/dxmain.c
gs/psi/dxmainc.c
gs/psi/estack.h
gs/psi/files.h
gs/psi/ghost.h
gs/psi/gs.c
gs/psi/gsdll.c
gs/psi/gsdll2.def
gs/psi/gsdll2.rc
gs/psi/gsdll32.def
gs/psi/gsdll32.rc
gs/psi/gsdll32metro.def
gs/psi/gsdll32w.lnk
gs/psi/gsdll64.def
gs/psi/gsdll64metro.def
gs/psi/gsdllARM32metro.def
gs/psi/gserver.c
gs/psi/gsos2.def
gs/psi/gsos2.icx
gs/psi/gsos2.rc
gs/psi/ialloc.c
gs/psi/ialloc.h
gs/psi/iapi.c
gs/psi/iapi.h
gs/psi/iastate.h
gs/psi/iastruct.h
gs/psi/ibnum.c
gs/psi/ibnum.h
gs/psi/ichar.h
gs/psi/ichar1.h
gs/psi/icharout.h
gs/psi/icid.h
gs/psi/icie.h
gs/psi/icolor.h
gs/psi/iconf.c
gs/psi/iconf.h
gs/psi/icontext.c
gs/psi/icontext.h
gs/psi/icremap.h
gs/psi/icsmap.h
gs/psi/icstate.h
gs/psi/iddict.h
gs/psi/iddstack.h
gs/psi/idebug.c
gs/psi/idebug.h
gs/psi/idict.c
gs/psi/idict.h
gs/psi/idictdef.h
gs/psi/idicttpl.h
gs/psi/idisp.c
gs/psi/idisp.h
gs/psi/idosave.h
gs/psi/idparam.c
gs/psi/idparam.h
gs/psi/idsdata.h
gs/psi/idstack.c
gs/psi/idstack.h
gs/psi/ierrors.h
gs/psi/iesdata.h
gs/psi/iestack.h
gs/psi/ifapi.h
gs/psi/ifcid.h
gs/psi/ifilter.h
gs/psi/ifilter2.h
gs/psi/ifont.h
gs/psi/ifont1.h
gs/psi/ifont2.h
gs/psi/ifont42.h
gs/psi/ifrpred.h
gs/psi/ifunc.h
gs/psi/ifwpred.h
gs/psi/igc.c
gs/psi/igc.h
gs/psi/igcref.c
gs/psi/igcstr.c
gs/psi/igcstr.h
gs/psi/igstate.h
gs/psi/iht.h
gs/psi/iimage.h
gs/psi/iimage2.h
gs/psi/iinit.c
gs/psi/iinit.h
gs/psi/ilevel.h
gs/psi/ilocate.c
gs/psi/imain.c
gs/psi/imain.h
gs/psi/imainarg.c
gs/psi/imainarg.h
gs/psi/imemory.h
gs/psi/iminst.h
gs/psi/iname.c
gs/psi/iname.h
gs/psi/inamedef.h
gs/psi/inameidx.h
gs/psi/inames.h
gs/psi/inamestr.h
gs/psi/inobtokn.c
gs/psi/inouparm.c
gs/psi/int.mak
gs/psi/interp.c
gs/psi/interp.h
gs/psi/iosdata.h
gs/psi/iostack.h
gs/psi/ipacked.h
gs/psi/iparam.c
gs/psi/iparam.h
gs/psi/iparray.h
gs/psi/ipcolor.h
gs/psi/iplugin.c
gs/psi/iplugin.h
gs/psi/ireclaim.c
gs/psi/iref.h
gs/psi/isave.c
gs/psi/isave.h
gs/psi/iscan.c
gs/psi/iscan.h
gs/psi/iscanbin.c
gs/psi/iscanbin.h
gs/psi/iscannum.c
gs/psi/iscannum.h
gs/psi/isdata.h
gs/psi/isstate.h
gs/psi/istack.c
gs/psi/istack.h
gs/psi/istkparm.h
gs/psi/istream.h
gs/psi/istruct.h
gs/psi/itoken.h
gs/psi/iutil.c
gs/psi/iutil.h
gs/psi/iutil2.c
gs/psi/iutil2.h
gs/psi/ivmem2.h
gs/psi/ivmspace.h
gs/psi/main.h
gs/psi/mkfilelt.cpp
gs/psi/msvc.mak
gs/psi/msvc32.mak
gs/psi/msvc64.mak
gs/psi/nsisinst.nsi
gs/psi/oparc.h
gs/psi/opcheck.h
gs/psi/opdef.h
gs/psi/oper.h
gs/psi/opextern.h
gs/psi/os2.mak
gs/psi/ostack.h
gs/psi/psromfs.mak
gs/psi/sfilter1.c
gs/psi/store.h
gs/psi/winint.mak
gs/psi/zalg.c
gs/psi/zarith.c
gs/psi/zarray.c
gs/psi/zbfont.c
gs/psi/zbseq.c
gs/psi/zcfont.c
gs/psi/zchar.c
gs/psi/zchar1.c
gs/psi/zchar2.c
gs/psi/zchar32.c
gs/psi/zchar42.c
gs/psi/zchar42.h
gs/psi/zcharout.c
gs/psi/zcharx.c
gs/psi/zcid.c
gs/psi/zcidtest.c
gs/psi/zcie.c
gs/psi/zcie.h
gs/psi/zcolor.c
gs/psi/zcolor.h
gs/psi/zcolor1.c
gs/psi/zcolor2.c
gs/psi/zcolor3.c
gs/psi/zcontext.c
gs/psi/zcontrol.c
gs/psi/zcrd.c
gs/psi/zcsdevn.c
gs/psi/zcsindex.c
gs/psi/zcspixel.c
gs/psi/zcssepr.c
gs/psi/zdevcal.c
gs/psi/zdevice.c
gs/psi/zdevice2.c
gs/psi/zdfilter.c
gs/psi/zdict.c
gs/psi/zdosio.c
gs/psi/zdouble.c
gs/psi/zdpnext.c
gs/psi/zdps.c
gs/psi/zdps1.c
gs/psi/zdscpars.c
gs/psi/zfaes.c
gs/psi/zfapi.c
gs/psi/zfarc4.c
gs/psi/zfbcp.c
gs/psi/zfcid.c
gs/psi/zfcid0.c
gs/psi/zfcid1.c
gs/psi/zfcmap.c
gs/psi/zfdctd.c
gs/psi/zfdcte.c
gs/psi/zfdecode.c
gs/psi/zfile.c
gs/psi/zfile.h
gs/psi/zfile1.c
gs/psi/zfileio.c
gs/psi/zfilter.c
gs/psi/zfilter2.c
gs/psi/zfilterx.c
gs/psi/zfimscale.c
gs/psi/zfjbig2.c
gs/psi/zfjpx.c
gs/psi/zfmd5.c
gs/psi/zfont.c
gs/psi/zfont0.c
gs/psi/zfont1.c
gs/psi/zfont2.c
gs/psi/zfont32.c
gs/psi/zfont42.c
gs/psi/zfontenum.c
gs/psi/zform.c
gs/psi/zfproc.c
gs/psi/zfrsd.c
gs/psi/zfrsd.h
gs/psi/zfsample.c
gs/psi/zfsha2.c
gs/psi/zfunc.c
gs/psi/zfunc.h
gs/psi/zfunc0.c
gs/psi/zfunc3.c
gs/psi/zfunc4.c
gs/psi/zfzlib.c
gs/psi/zgeneric.c
gs/psi/zgstate.c
gs/psi/zhsb.c
gs/psi/zht.c
gs/psi/zht1.c
gs/psi/zht2.c
gs/psi/zht2.h
gs/psi/zicc.c
gs/psi/zicc.h
gs/psi/zimage.c
gs/psi/zimage2.c
gs/psi/zimage3.c
gs/psi/ziodev.c
gs/psi/ziodev2.c
gs/psi/ziodevs.c
gs/psi/ziodevsc.c
gs/psi/zmath.c
gs/psi/zmatrix.c
gs/psi/zmedia2.c
gs/psi/zmisc.c
gs/psi/zmisc1.c
gs/psi/zmisc2.c
gs/psi/zmisc3.c
gs/psi/zncdummy.c
gs/psi/zpacked.c
gs/psi/zpaint.c
gs/psi/zpath.c
gs/psi/zpath1.c
gs/psi/zpcolor.c
gs/psi/zpdf_r6.c
gs/psi/zpdfops.c
gs/psi/zrelbit.c
gs/psi/zrop.c
gs/psi/zshade.c
gs/psi/zstack.c
gs/psi/zstring.c
gs/psi/zsysvm.c
gs/psi/ztoken.c
gs/psi/ztrans.c
gs/psi/ztrap.c
gs/psi/ztype.c
gs/psi/zupath.c
gs/psi/zusparam.c
gs/psi/zutf8.c
gs/psi/zvmem.c
gs/psi/zvmem2.c
gs/psi/zwinutf8.c
gs/tiff/COPYRIGHT
gs/tiff/ChangeLog
gs/tiff/HOWTO-RELEASE
gs/tiff/Makefile.am
gs/tiff/Makefile.in
gs/tiff/Makefile.vc
gs/tiff/README
gs/tiff/README.vms
gs/tiff/RELEASE-DATE
gs/tiff/SConstruct
gs/tiff/TODO
gs/tiff/VERSION
gs/tiff/aclocal.m4
gs/tiff/autogen.sh
gs/tiff/build/Makefile.am
gs/tiff/build/Makefile.in
gs/tiff/build/README
gs/tiff/config/compile
gs/tiff/config/config.guess
gs/tiff/config/config.sub
gs/tiff/config/depcomp
gs/tiff/config/install-sh
gs/tiff/config/ltmain.sh
gs/tiff/config/missing
gs/tiff/config/mkinstalldirs
gs/tiff/configure
gs/tiff/configure.ac
gs/tiff/configure.com
gs/tiff/contrib/Makefile.am
gs/tiff/contrib/Makefile.in
gs/tiff/contrib/README
gs/tiff/contrib/addtiffo/Makefile.am
gs/tiff/contrib/addtiffo/Makefile.in
gs/tiff/contrib/addtiffo/Makefile.vc
gs/tiff/contrib/addtiffo/README
gs/tiff/contrib/addtiffo/addtiffo.c
gs/tiff/contrib/addtiffo/tif_overview.c
gs/tiff/contrib/addtiffo/tif_ovrcache.c
gs/tiff/contrib/addtiffo/tif_ovrcache.h
gs/tiff/contrib/dbs/Makefile.am
gs/tiff/contrib/dbs/Makefile.in
gs/tiff/contrib/dbs/README
gs/tiff/contrib/dbs/tiff-bi.c
gs/tiff/contrib/dbs/tiff-grayscale.c
gs/tiff/contrib/dbs/tiff-palette.c
gs/tiff/contrib/dbs/tiff-rgb.c
gs/tiff/contrib/dbs/xtiff/Makefile.am
gs/tiff/contrib/dbs/xtiff/Makefile.in
gs/tiff/contrib/dbs/xtiff/README
gs/tiff/contrib/dbs/xtiff/patchlevel.h
gs/tiff/contrib/dbs/xtiff/xtiff.c
gs/tiff/contrib/dbs/xtiff/xtifficon.h
gs/tiff/contrib/iptcutil/Makefile.am
gs/tiff/contrib/iptcutil/Makefile.in
gs/tiff/contrib/iptcutil/README
gs/tiff/contrib/iptcutil/iptcutil.c
gs/tiff/contrib/iptcutil/test.iptc
gs/tiff/contrib/iptcutil/test.txt
gs/tiff/contrib/mfs/Makefile.am
gs/tiff/contrib/mfs/Makefile.in
gs/tiff/contrib/mfs/README
gs/tiff/contrib/mfs/mfs_file.c
gs/tiff/contrib/pds/Makefile.am
gs/tiff/contrib/pds/Makefile.in
gs/tiff/contrib/pds/README
gs/tiff/contrib/pds/tif_imageiter.c
gs/tiff/contrib/pds/tif_imageiter.h
gs/tiff/contrib/pds/tif_pdsdirread.c
gs/tiff/contrib/pds/tif_pdsdirwrite.c
gs/tiff/contrib/ras/Makefile.am
gs/tiff/contrib/ras/Makefile.in
gs/tiff/contrib/ras/README
gs/tiff/contrib/ras/ras2tif.c
gs/tiff/contrib/ras/tif2ras.c
gs/tiff/contrib/stream/Makefile.am
gs/tiff/contrib/stream/Makefile.in
gs/tiff/contrib/stream/README
gs/tiff/contrib/stream/tiffstream.cpp
gs/tiff/contrib/stream/tiffstream.h
gs/tiff/contrib/tags/Makefile.am
gs/tiff/contrib/tags/Makefile.in
gs/tiff/contrib/tags/README
gs/tiff/contrib/tags/listtif.c
gs/tiff/contrib/tags/maketif.c
gs/tiff/contrib/tags/xtif_dir.c
gs/tiff/contrib/tags/xtiffio.h
gs/tiff/contrib/tags/xtiffiop.h
gs/tiff/contrib/win_dib/Makefile.am
gs/tiff/contrib/win_dib/Makefile.in
gs/tiff/contrib/win_dib/Makefile.w95
gs/tiff/contrib/win_dib/README.Tiffile
gs/tiff/contrib/win_dib/README.tiff2dib
gs/tiff/contrib/win_dib/Tiffile.cpp
gs/tiff/contrib/win_dib/tiff2dib.c
gs/tiff/html/Makefile.am
gs/tiff/html/Makefile.in
gs/tiff/html/TIFFTechNote2.html
gs/tiff/html/addingtags.html
gs/tiff/html/bugs.html
gs/tiff/html/build.html
gs/tiff/html/contrib.html
gs/tiff/html/document.html
gs/tiff/html/images.html
gs/tiff/html/images/Makefile.am
gs/tiff/html/images/Makefile.in
gs/tiff/html/images/back.gif
gs/tiff/html/images/bali.jpg
gs/tiff/html/images/cat.gif
gs/tiff/html/images/cover.jpg
gs/tiff/html/images/cramps.gif
gs/tiff/html/images/dave.gif
gs/tiff/html/images/info.gif
gs/tiff/html/images/jello.jpg
gs/tiff/html/images/jim.gif
gs/tiff/html/images/note.gif
gs/tiff/html/images/oxford.gif
gs/tiff/html/images/quad.jpg
gs/tiff/html/images/ring.gif
gs/tiff/html/images/smallliz.jpg
gs/tiff/html/images/strike.gif
gs/tiff/html/images/warning.gif
gs/tiff/html/index.html
gs/tiff/html/internals.html
gs/tiff/html/intro.html
gs/tiff/html/libtiff.html
gs/tiff/html/man/Makefile.am
gs/tiff/html/man/Makefile.in
gs/tiff/html/man/TIFFClose.3tiff.html
gs/tiff/html/man/TIFFDataWidth.3tiff.html
gs/tiff/html/man/TIFFError.3tiff.html
gs/tiff/html/man/TIFFFlush.3tiff.html
gs/tiff/html/man/TIFFGetField.3tiff.html
gs/tiff/html/man/TIFFOpen.3tiff.html
gs/tiff/html/man/TIFFPrintDirectory.3tiff.html
gs/tiff/html/man/TIFFRGBAImage.3tiff.html
gs/tiff/html/man/TIFFReadDirectory.3tiff.html
gs/tiff/html/man/TIFFReadEncodedStrip.3tiff.html
gs/tiff/html/man/TIFFReadEncodedTile.3tiff.html
gs/tiff/html/man/TIFFReadRGBAImage.3tiff.html
gs/tiff/html/man/TIFFReadRGBAStrip.3tiff.html
gs/tiff/html/man/TIFFReadRGBATile.3tiff.html
gs/tiff/html/man/TIFFReadRawStrip.3tiff.html
gs/tiff/html/man/TIFFReadRawTile.3tiff.html
gs/tiff/html/man/TIFFReadScanline.3tiff.html
gs/tiff/html/man/TIFFReadTile.3tiff.html
gs/tiff/html/man/TIFFSetDirectory.3tiff.html
gs/tiff/html/man/TIFFSetField.3tiff.html
gs/tiff/html/man/TIFFWarning.3tiff.html
gs/tiff/html/man/TIFFWriteDirectory.3tiff.html
gs/tiff/html/man/TIFFWriteEncodedStrip.3tiff.html
gs/tiff/html/man/TIFFWriteEncodedTile.3tiff.html
gs/tiff/html/man/TIFFWriteRawStrip.3tiff.html
gs/tiff/html/man/TIFFWriteRawTile.3tiff.html
gs/tiff/html/man/TIFFWriteScanline.3tiff.html
gs/tiff/html/man/TIFFWriteTile.3tiff.html
gs/tiff/html/man/TIFFbuffer.3tiff.html
gs/tiff/html/man/TIFFcodec.3tiff.html
gs/tiff/html/man/TIFFcolor.3tiff.html
gs/tiff/html/man/TIFFmemory.3tiff.html
gs/tiff/html/man/TIFFquery.3tiff.html
gs/tiff/html/man/TIFFsize.3tiff.html
gs/tiff/html/man/TIFFstrip.3tiff.html
gs/tiff/html/man/TIFFswab.3tiff.html
gs/tiff/html/man/TIFFtile.3tiff.html
gs/tiff/html/man/fax2ps.1.html
gs/tiff/html/man/fax2tiff.1.html
gs/tiff/html/man/gif2tiff.1.html
gs/tiff/html/man/index.html
gs/tiff/html/man/libtiff.3tiff.html
gs/tiff/html/man/pal2rgb.1.html
gs/tiff/html/man/ppm2tiff.1.html
gs/tiff/html/man/ras2tiff.1.html
gs/tiff/html/man/raw2tiff.1.html
gs/tiff/html/man/rgb2ycbcr.1.html
gs/tiff/html/man/sgi2tiff.1.html
gs/tiff/html/man/thumbnail.1.html
gs/tiff/html/man/tiff2bw.1.html
gs/tiff/html/man/tiff2pdf.1.html
gs/tiff/html/man/tiff2ps.1.html
gs/tiff/html/man/tiff2rgba.1.html
gs/tiff/html/man/tiffcmp.1.html
gs/tiff/html/man/tiffcp.1.html
gs/tiff/html/man/tiffcrop.1.html
gs/tiff/html/man/tiffdither.1.html
gs/tiff/html/man/tiffdump.1.html
gs/tiff/html/man/tiffgt.1.html
gs/tiff/html/man/tiffinfo.1.html
gs/tiff/html/man/tiffmedian.1.html
gs/tiff/html/man/tiffset.1.html
gs/tiff/html/man/tiffsplit.1.html
gs/tiff/html/man/tiffsv.1.html
gs/tiff/html/misc.html
gs/tiff/html/support.html
gs/tiff/html/tools.html
gs/tiff/html/v3.4beta007.html
gs/tiff/html/v3.4beta016.html
gs/tiff/html/v3.4beta018.html
gs/tiff/html/v3.4beta024.html
gs/tiff/html/v3.4beta028.html
gs/tiff/html/v3.4beta029.html
gs/tiff/html/v3.4beta031.html
gs/tiff/html/v3.4beta032.html
gs/tiff/html/v3.4beta033.html
gs/tiff/html/v3.4beta034.html
gs/tiff/html/v3.4beta035.html
gs/tiff/html/v3.4beta036.html
gs/tiff/html/v3.5.1.html
gs/tiff/html/v3.5.2.html
gs/tiff/html/v3.5.3.html
gs/tiff/html/v3.5.4.html
gs/tiff/html/v3.5.5.html
gs/tiff/html/v3.5.6-beta.html
gs/tiff/html/v3.5.7.html
gs/tiff/html/v3.6.0.html
gs/tiff/html/v3.6.1.html
gs/tiff/html/v3.7.0.html
gs/tiff/html/v3.7.0alpha.html
gs/tiff/html/v3.7.0beta.html
gs/tiff/html/v3.7.0beta2.html
gs/tiff/html/v3.7.1.html
gs/tiff/html/v3.7.2.html
gs/tiff/html/v3.7.3.html
gs/tiff/html/v3.7.4.html
gs/tiff/html/v3.8.0.html
gs/tiff/html/v3.8.1.html
gs/tiff/html/v3.8.2.html
gs/tiff/html/v3.9.0beta.html
gs/tiff/html/v3.9.1.html
gs/tiff/html/v3.9.2.html
gs/tiff/html/v4.0.0.html
gs/tiff/libtiff-4.pc.in
gs/tiff/libtiff/Makefile.am
gs/tiff/libtiff/Makefile.in
gs/tiff/libtiff/Makefile.vc
gs/tiff/libtiff/SConstruct
gs/tiff/libtiff/libtiff.def
gs/tiff/libtiff/libtiff.map
gs/tiff/libtiff/libtiffxx.map
gs/tiff/libtiff/mkg3states.c
gs/tiff/libtiff/t4.h
gs/tiff/libtiff/tif_aux.c
gs/tiff/libtiff/tif_close.c
gs/tiff/libtiff/tif_codec.c
gs/tiff/libtiff/tif_color.c
gs/tiff/libtiff/tif_compress.c
gs/tiff/libtiff/tif_config.h-vms
gs/tiff/libtiff/tif_config.h.in
gs/tiff/libtiff/tif_config.vc.h
gs/tiff/libtiff/tif_config.wince.h
gs/tiff/libtiff/tif_dir.c
gs/tiff/libtiff/tif_dir.h
gs/tiff/libtiff/tif_dirinfo.c
gs/tiff/libtiff/tif_dirread.c
gs/tiff/libtiff/tif_dirwrite.c
gs/tiff/libtiff/tif_dumpmode.c
gs/tiff/libtiff/tif_error.c
gs/tiff/libtiff/tif_extension.c
gs/tiff/libtiff/tif_fax3.c
gs/tiff/libtiff/tif_fax3.h
gs/tiff/libtiff/tif_fax3sm.c
gs/tiff/libtiff/tif_flush.c
gs/tiff/libtiff/tif_getimage.c
gs/tiff/libtiff/tif_jbig.c
gs/tiff/libtiff/tif_jpeg.c
gs/tiff/libtiff/tif_jpeg_12.c
gs/tiff/libtiff/tif_luv.c
gs/tiff/libtiff/tif_lzma.c
gs/tiff/libtiff/tif_lzw.c
gs/tiff/libtiff/tif_next.c
gs/tiff/libtiff/tif_ojpeg.c
gs/tiff/libtiff/tif_open.c
gs/tiff/libtiff/tif_packbits.c
gs/tiff/libtiff/tif_pixarlog.c
gs/tiff/libtiff/tif_predict.c
gs/tiff/libtiff/tif_predict.h
gs/tiff/libtiff/tif_print.c
gs/tiff/libtiff/tif_read.c
gs/tiff/libtiff/tif_stream.cxx
gs/tiff/libtiff/tif_strip.c
gs/tiff/libtiff/tif_swab.c
gs/tiff/libtiff/tif_thunder.c
gs/tiff/libtiff/tif_tile.c
gs/tiff/libtiff/tif_unix.c
gs/tiff/libtiff/tif_version.c
gs/tiff/libtiff/tif_warning.c
gs/tiff/libtiff/tif_win32.c
gs/tiff/libtiff/tif_write.c
gs/tiff/libtiff/tif_zip.c
gs/tiff/libtiff/tiff.h
gs/tiff/libtiff/tiffconf.h.in
gs/tiff/libtiff/tiffconf.vc.h
gs/tiff/libtiff/tiffconf.wince.h
gs/tiff/libtiff/tiffio.h
gs/tiff/libtiff/tiffio.hxx
gs/tiff/libtiff/tiffiop.h
gs/tiff/libtiff/tiffvers.h
gs/tiff/libtiff/uvcode.h
gs/tiff/m4/acinclude.m4
gs/tiff/m4/libtool.m4
gs/tiff/m4/ltoptions.m4
gs/tiff/m4/ltsugar.m4
gs/tiff/m4/ltversion.m4
gs/tiff/m4/lt~obsolete.m4
gs/tiff/man/Makefile.am
gs/tiff/man/Makefile.in
gs/tiff/man/TIFFClose.3tiff
gs/tiff/man/TIFFDataWidth.3tiff
gs/tiff/man/TIFFError.3tiff
gs/tiff/man/TIFFFlush.3tiff
gs/tiff/man/TIFFGetField.3tiff
gs/tiff/man/TIFFOpen.3tiff
gs/tiff/man/TIFFPrintDirectory.3tiff
gs/tiff/man/TIFFRGBAImage.3tiff
gs/tiff/man/TIFFReadDirectory.3tiff
gs/tiff/man/TIFFReadEncodedStrip.3tiff
gs/tiff/man/TIFFReadEncodedTile.3tiff
gs/tiff/man/TIFFReadRGBAImage.3tiff
gs/tiff/man/TIFFReadRGBAStrip.3tiff
gs/tiff/man/TIFFReadRGBATile.3tiff
gs/tiff/man/TIFFReadRawStrip.3tiff
gs/tiff/man/TIFFReadRawTile.3tiff
gs/tiff/man/TIFFReadScanline.3tiff
gs/tiff/man/TIFFReadTile.3tiff
gs/tiff/man/TIFFSetDirectory.3tiff
gs/tiff/man/TIFFSetField.3tiff
gs/tiff/man/TIFFWarning.3tiff
gs/tiff/man/TIFFWriteDirectory.3tiff
gs/tiff/man/TIFFWriteEncodedStrip.3tiff
gs/tiff/man/TIFFWriteEncodedTile.3tiff
gs/tiff/man/TIFFWriteRawStrip.3tiff
gs/tiff/man/TIFFWriteRawTile.3tiff
gs/tiff/man/TIFFWriteScanline.3tiff
gs/tiff/man/TIFFWriteTile.3tiff
gs/tiff/man/TIFFbuffer.3tiff
gs/tiff/man/TIFFcodec.3tiff
gs/tiff/man/TIFFcolor.3tiff
gs/tiff/man/TIFFmemory.3tiff
gs/tiff/man/TIFFquery.3tiff
gs/tiff/man/TIFFsize.3tiff
gs/tiff/man/TIFFstrip.3tiff
gs/tiff/man/TIFFswab.3tiff
gs/tiff/man/TIFFtile.3tiff
gs/tiff/man/bmp2tiff.1
gs/tiff/man/fax2ps.1
gs/tiff/man/fax2tiff.1
gs/tiff/man/gif2tiff.1
gs/tiff/man/libtiff.3tiff
gs/tiff/man/pal2rgb.1
gs/tiff/man/ppm2tiff.1
gs/tiff/man/ras2tiff.1
gs/tiff/man/raw2tiff.1
gs/tiff/man/rgb2ycbcr.1
gs/tiff/man/sgi2tiff.1
gs/tiff/man/thumbnail.1
gs/tiff/man/tiff2bw.1
gs/tiff/man/tiff2pdf.1
gs/tiff/man/tiff2ps.1
gs/tiff/man/tiff2rgba.1
gs/tiff/man/tiffcmp.1
gs/tiff/man/tiffcp.1
gs/tiff/man/tiffcrop.1
gs/tiff/man/tiffdither.1
gs/tiff/man/tiffdump.1
gs/tiff/man/tiffgt.1
gs/tiff/man/tiffinfo.1
gs/tiff/man/tiffmedian.1
gs/tiff/man/tiffset.1
gs/tiff/man/tiffsplit.1
gs/tiff/man/tiffsv.1
gs/tiff/nmake.opt
gs/tiff/port/Makefile.am
gs/tiff/port/Makefile.in
gs/tiff/port/Makefile.vc
gs/tiff/port/dummy.c
gs/tiff/port/getopt.c
gs/tiff/port/lfind.c
gs/tiff/port/libport.h
gs/tiff/port/strcasecmp.c
gs/tiff/port/strtoul.c
gs/tiff/port/strtoull.c
gs/tiff/test/Makefile.am
gs/tiff/test/Makefile.in
gs/tiff/test/ascii_tag.c
gs/tiff/test/bmp2tiff_palette.sh
gs/tiff/test/bmp2tiff_rgb.sh
gs/tiff/test/check_tag.c
gs/tiff/test/common.sh
gs/tiff/test/gif2tiff.sh
gs/tiff/test/images/README.txt
gs/tiff/test/images/logluv-3c-16b.tiff
gs/tiff/test/images/minisblack-1c-16b.tiff
gs/tiff/test/images/minisblack-1c-8b.pgm
gs/tiff/test/images/minisblack-1c-8b.tiff
gs/tiff/test/images/minisblack-2c-8b-alpha.tiff
gs/tiff/test/images/miniswhite-1c-1b.pbm
gs/tiff/test/images/miniswhite-1c-1b.tiff
gs/tiff/test/images/palette-1c-1b.tiff
gs/tiff/test/images/palette-1c-4b.tiff
gs/tiff/test/images/palette-1c-8b.bmp
gs/tiff/test/images/palette-1c-8b.gif
gs/tiff/test/images/palette-1c-8b.tiff
gs/tiff/test/images/rgb-3c-16b.tiff
gs/tiff/test/images/rgb-3c-8b.bmp
gs/tiff/test/images/rgb-3c-8b.ppm
gs/tiff/test/images/rgb-3c-8b.tiff
gs/tiff/test/long_tag.c
gs/tiff/test/ppm2tiff_pbm.sh
gs/tiff/test/ppm2tiff_pgm.sh
gs/tiff/test/ppm2tiff_ppm.sh
gs/tiff/test/rewrite_tag.c
gs/tiff/test/short_tag.c
gs/tiff/test/strip.c
gs/tiff/test/strip_rw.c
gs/tiff/test/test_arrays.c
gs/tiff/test/test_arrays.h
gs/tiff/test/tiff2pdf.sh
gs/tiff/test/tiff2ps-EPS1.sh
gs/tiff/test/tiff2ps-PS1.sh
gs/tiff/test/tiff2ps-PS2.sh
gs/tiff/test/tiff2ps-PS3.sh
gs/tiff/test/tiff2rgba-logluv-3c-16b.sh
gs/tiff/test/tiff2rgba-minisblack-1c-16b.sh
gs/tiff/test/tiff2rgba-minisblack-1c-8b.sh
gs/tiff/test/tiff2rgba-minisblack-2c-8b-alpha.sh
gs/tiff/test/tiff2rgba-miniswhite-1c-1b.sh
gs/tiff/test/tiff2rgba-palette-1c-1b.sh
gs/tiff/test/tiff2rgba-palette-1c-4b.sh
gs/tiff/test/tiff2rgba-palette-1c-8b.sh
gs/tiff/test/tiff2rgba-rgb-3c-16b.sh
gs/tiff/test/tiff2rgba-rgb-3c-8b.sh
gs/tiff/test/tiffcp-g3-1d-fill.sh
gs/tiff/test/tiffcp-g3-1d.sh
gs/tiff/test/tiffcp-g3-2d-fill.sh
gs/tiff/test/tiffcp-g3-2d.sh
gs/tiff/test/tiffcp-g3.sh
gs/tiff/test/tiffcp-g4.sh
gs/tiff/test/tiffcp-logluv.sh
gs/tiff/test/tiffcp-split-join.sh
gs/tiff/test/tiffcp-split.sh
gs/tiff/test/tiffcp-thumbnail.sh
gs/tiff/test/tiffcrop-R90-logluv-3c-16b.sh
gs/tiff/test/tiffcrop-R90-minisblack-1c-16b.sh
gs/tiff/test/tiffcrop-R90-minisblack-1c-8b.sh
gs/tiff/test/tiffcrop-R90-minisblack-2c-8b-alpha.sh
gs/tiff/test/tiffcrop-R90-miniswhite-1c-1b.sh
gs/tiff/test/tiffcrop-R90-palette-1c-1b.sh
gs/tiff/test/tiffcrop-R90-palette-1c-4b.sh
gs/tiff/test/tiffcrop-R90-palette-1c-8b.sh
gs/tiff/test/tiffcrop-R90-rgb-3c-16b.sh
gs/tiff/test/tiffcrop-R90-rgb-3c-8b.sh
gs/tiff/test/tiffcrop-doubleflip-logluv-3c-16b.sh
gs/tiff/test/tiffcrop-doubleflip-minisblack-1c-16b.sh
gs/tiff/test/tiffcrop-doubleflip-minisblack-1c-8b.sh
gs/tiff/test/tiffcrop-doubleflip-minisblack-2c-8b-alpha.sh
gs/tiff/test/tiffcrop-doubleflip-miniswhite-1c-1b.sh
gs/tiff/test/tiffcrop-doubleflip-palette-1c-1b.sh
gs/tiff/test/tiffcrop-doubleflip-palette-1c-4b.sh
gs/tiff/test/tiffcrop-doubleflip-palette-1c-8b.sh
gs/tiff/test/tiffcrop-doubleflip-rgb-3c-16b.sh
gs/tiff/test/tiffcrop-doubleflip-rgb-3c-8b.sh
gs/tiff/test/tiffcrop-extract-logluv-3c-16b.sh
gs/tiff/test/tiffcrop-extract-minisblack-1c-16b.sh
gs/tiff/test/tiffcrop-extract-minisblack-1c-8b.sh
gs/tiff/test/tiffcrop-extract-minisblack-2c-8b-alpha.sh
gs/tiff/test/tiffcrop-extract-miniswhite-1c-1b.sh
gs/tiff/test/tiffcrop-extract-palette-1c-1b.sh
gs/tiff/test/tiffcrop-extract-palette-1c-4b.sh
gs/tiff/test/tiffcrop-extract-palette-1c-8b.sh
gs/tiff/test/tiffcrop-extract-rgb-3c-16b.sh
gs/tiff/test/tiffcrop-extract-rgb-3c-8b.sh
gs/tiff/test/tiffcrop-extractz14-logluv-3c-16b.sh
gs/tiff/test/tiffcrop-extractz14-minisblack-1c-16b.sh
gs/tiff/test/tiffcrop-extractz14-minisblack-1c-8b.sh
gs/tiff/test/tiffcrop-extractz14-minisblack-2c-8b-alpha.sh
gs/tiff/test/tiffcrop-extractz14-miniswhite-1c-1b.sh
gs/tiff/test/tiffcrop-extractz14-palette-1c-1b.sh
gs/tiff/test/tiffcrop-extractz14-palette-1c-4b.sh
gs/tiff/test/tiffcrop-extractz14-palette-1c-8b.sh
gs/tiff/test/tiffcrop-extractz14-rgb-3c-16b.sh
gs/tiff/test/tiffcrop-extractz14-rgb-3c-8b.sh
gs/tiff/test/tiffdump.sh
gs/tiff/test/tiffinfo.sh
gs/tiff/test/tifftest.h
gs/tiff/tools/Makefile.am
gs/tiff/tools/Makefile.in
gs/tiff/tools/Makefile.vc
gs/tiff/tools/bmp2tiff.c
gs/tiff/tools/fax2ps.c
gs/tiff/tools/fax2tiff.c
gs/tiff/tools/gif2tiff.c
gs/tiff/tools/pal2rgb.c
gs/tiff/tools/ppm2tiff.c
gs/tiff/tools/ras2tiff.c
gs/tiff/tools/rasterfile.h
gs/tiff/tools/raw2tiff.c
gs/tiff/tools/rgb2ycbcr.c
gs/tiff/tools/sgi2tiff.c
gs/tiff/tools/sgisv.c
gs/tiff/tools/thumbnail.c
gs/tiff/tools/tiff2bw.c
gs/tiff/tools/tiff2pdf.c
gs/tiff/tools/tiff2ps.c
gs/tiff/tools/tiff2rgba.c
gs/tiff/tools/tiffcmp.c
gs/tiff/tools/tiffcp.c
gs/tiff/tools/tiffcrop.c
gs/tiff/tools/tiffdither.c
gs/tiff/tools/tiffdump.c
gs/tiff/tools/tiffgt.c
gs/tiff/tools/tiffinfo.c
gs/tiff/tools/tiffmedian.c
gs/tiff/tools/tiffset.c
gs/tiff/tools/tiffsplit.c
gs/tiff/tools/ycbcr.c
gs/toolbin/GenSubstCID.ps
gs/toolbin/afmutil.py
gs/toolbin/apitest.pl
gs/toolbin/bmpcmp.c
gs/toolbin/bughunt.sh
gs/toolbin/bugsByEngineer.pl
gs/toolbin/checkdeps.pl
gs/toolbin/color/icc_creator/ICC Profiles/cmyk_k_ouput_only.icc
gs/toolbin/color/icc_creator/ICC Profiles/ps_emulate_cmyk.icc
gs/toolbin/color/icc_creator/ICC Profiles/ps_emulate_gray.icc
gs/toolbin/color/icc_creator/ICC Profiles/ps_emulate_rgb.icc
gs/toolbin/color/icc_creator/ICC_Creator.sln
gs/toolbin/color/icc_creator/ICC_Creator/CIELAB.h
gs/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp
gs/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h
gs/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.rc
gs/toolbin/color/icc_creator/ICC_Creator/ICC_Creator.vcproj
gs/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp
gs/toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h
gs/toolbin/color/icc_creator/ICC_Creator/icc34.h
gs/toolbin/color/icc_creator/ICC_Creator/icc_create.cpp
gs/toolbin/color/icc_creator/ICC_Creator/icc_create.h
gs/toolbin/color/icc_creator/ICC_Creator/res/ICC_Creator.rc2
gs/toolbin/color/icc_creator/ICC_Creator/res/gsimage_.ico
gs/toolbin/color/icc_creator/ICC_Creator/res/gswin.ico
gs/toolbin/color/icc_creator/ICC_Creator/resource.h
gs/toolbin/color/icc_creator/ICC_Creator/stdafx.cpp
gs/toolbin/color/icc_creator/ICC_Creator/stdafx.h
gs/toolbin/color/icc_creator/ICC_Creator/targetver.h
gs/toolbin/color/icc_creator/README.txt
gs/toolbin/color/icc_creator/effects/black_output.icc
gs/toolbin/color/icc_creator/effects/c_only.txt
gs/toolbin/color/icc_creator/effects/cyan_output.icc
gs/toolbin/color/icc_creator/effects/k_only.txt
gs/toolbin/color/icc_creator/effects/m_only.txt
gs/toolbin/color/icc_creator/effects/magenta_output.icc
gs/toolbin/color/icc_creator/effects/y_only.txt
gs/toolbin/color/icc_creator/effects/yellow_output.icc
gs/toolbin/color/icc_creator/example/artifex_blue_purple.icc
gs/toolbin/color/icc_creator/example/artifex_tritone.icc
gs/toolbin/color/icc_creator/example/cielab_values.txt
gs/toolbin/color/icc_creator/example/color_names.txt
gs/toolbin/color/icc_creator/example/duotone.pdf
gs/toolbin/color/icc_creator/example/tritone.pdf
gs/toolbin/color/icc_creator/example/tritone_cielab.txt
gs/toolbin/color/icc_creator/example/tritone_names.txt
gs/toolbin/color/icc_creator/ucr_bg.txt
gs/toolbin/color/named_color/named_color_table.txt
gs/toolbin/color/named_color/named_colors.pdf
gs/toolbin/color/src_color/cmyk_des_renderintent.icc
gs/toolbin/color/src_color/cmyk_src_cyan.icc
gs/toolbin/color/src_color/cmyk_src_magenta.icc
gs/toolbin/color/src_color/cmyk_src_renderintent.icc
gs/toolbin/color/src_color/cmyk_src_yellow.icc
gs/toolbin/color/src_color/objsrc_profiles_example.txt
gs/toolbin/color/src_color/rgb_source_blue.icc
gs/toolbin/color/src_color/rgb_source_green.icc
gs/toolbin/color/src_color/rgb_source_red.icc
gs/toolbin/drawafm.ps
gs/toolbin/encs2c.ps
gs/toolbin/errlist.tcl
gs/toolbin/extractFonts.ps
gs/toolbin/extractICCprofiles.ps
gs/toolbin/gen_ldf_jb2.py
gs/toolbin/genfontmap.ps
gs/toolbin/gitlog2changelog.py
gs/toolbin/gitsetup.sh
gs/toolbin/gsmake
gs/toolbin/gsmake.tcl
gs/toolbin/halftone/ETS/README.txt
gs/toolbin/halftone/ETS/ei03.pdf
gs/toolbin/halftone/ETS/ets.c
gs/toolbin/halftone/ETS/ets.h
gs/toolbin/halftone/ETS/ipview.html
gs/toolbin/halftone/ETS/test_ets.c
gs/toolbin/halftone/ETS/tm.h
gs/toolbin/halftone/ETS/win32/ETS.sln
gs/toolbin/halftone/ETS/win32/ETS.vcproj
gs/toolbin/halftone/gen_ordered/README
gs/toolbin/halftone/gen_ordered/gen_ordered.c
gs/toolbin/halftone/gen_ordered/gen_ordered.sln
gs/toolbin/halftone/gen_ordered/gen_ordered.vcproj
gs/toolbin/halftone/gen_stochastic/gen_stochastic.c
gs/toolbin/halftone/gen_stochastic/gen_stochastic.sln
gs/toolbin/halftone/gen_stochastic/gen_stochastic.vcproj
gs/toolbin/headers.tcl
gs/toolbin/htmldiff.pl
gs/toolbin/jpxtopdf.c
gs/toolbin/leaks.tcl
gs/toolbin/localcluster/clusterpush.pl
gs/toolbin/localcluster/clusterpush.txt
gs/toolbin/localcluster/gitpush.sh
gs/toolbin/localcluster/readme
gs/toolbin/makehist.tcl
gs/toolbin/memory.py
gs/toolbin/ocheck.py
gs/toolbin/pdf_info.ps
gs/toolbin/pdfinflt.ps
gs/toolbin/performance.pl
gs/toolbin/pre.chk
gs/toolbin/pre.tcl
gs/toolbin/precheck.tcl
gs/toolbin/pscet_status.pl
gs/toolbin/search-svn-revs
gs/toolbin/search/README
gs/toolbin/smoke.ps
gs/toolbin/split_changelog.py
gs/toolbin/squeeze2html.pl
gs/toolbin/suite.tcl
gs/toolbin/tests/README
gs/toolbin/tests/build_revision.py
gs/toolbin/tests/check_all.py
gs/toolbin/tests/check_comments.py
gs/toolbin/tests/check_dirs.py
gs/toolbin/tests/check_docrefs.py
gs/toolbin/tests/check_source.py
gs/toolbin/tests/cmpi.py
gs/toolbin/tests/collate.py
gs/toolbin/tests/compare_checksumdb.py
gs/toolbin/tests/compare_checksums.py
gs/toolbin/tests/dump_checksum.py
gs/toolbin/tests/dump_checksum_plus.py
gs/toolbin/tests/dump_checksum_raw.py
gs/toolbin/tests/find_unique_file.py
gs/toolbin/tests/fuzzy.c
gs/toolbin/tests/get_baseline_log.py
gs/toolbin/tests/get_baselines.py
gs/toolbin/tests/gscheck_all.py
gs/toolbin/tests/gscheck_fuzzypdf.py
gs/toolbin/tests/gscheck_pdfwrite.py
gs/toolbin/tests/gscheck_raster.py
gs/toolbin/tests/gscheck_testfiles.py
gs/toolbin/tests/gsconf.py
gs/toolbin/tests/gsparamsets.py
gs/toolbin/tests/gssum.py
gs/toolbin/tests/gstestgs.py
gs/toolbin/tests/gstestutils.py
gs/toolbin/tests/gsutil.py
gs/toolbin/tests/gsvalidate.py
gs/toolbin/tests/main.py
gs/toolbin/tests/make_baselinedb.py
gs/toolbin/tests/make_testdb.py
gs/toolbin/tests/make_two_pdfversions
gs/toolbin/tests/make_two_versions
gs/toolbin/tests/myoptparse.py
gs/toolbin/tests/rasterdb.py
gs/toolbin/tests/regen_baseline.py
gs/toolbin/tests/regen_filelist.py
gs/toolbin/tests/revert_baseline
gs/toolbin/tests/revert_pdfbaseline
gs/toolbin/tests/run_nightly
gs/toolbin/tests/run_nightly.py
gs/toolbin/tests/run_parallel
gs/toolbin/tests/run_regression.py
gs/toolbin/tests/run_series.py
gs/toolbin/tests/testdiff.py
gs/toolbin/tests/testing.cfg.example
gs/toolbin/tests/update_baseline.py
gs/toolbin/tests/update_specific
gs/toolbin/tests/updatelist.py
gs/toolbin/tests/updatelistpdf.py
gs/toolbin/tests/validate.py
gs/toolbin/tmake.tcl
gs/toolbin/vg_bugs.supp
gs/toolbin/vg_okay.supp
gs/zlib/CMakeLists.txt
gs/zlib/ChangeLog
gs/zlib/FAQ
gs/zlib/INDEX
gs/zlib/Makefile
gs/zlib/Makefile.in
gs/zlib/README
gs/zlib/adler32.c
gs/zlib/amiga/Makefile.pup
gs/zlib/amiga/Makefile.sas
gs/zlib/as400/bndsrc
gs/zlib/as400/compile.clp
gs/zlib/as400/readme.txt
gs/zlib/as400/zlib.inc
gs/zlib/compress.c
gs/zlib/configure
gs/zlib/contrib/README.contrib
gs/zlib/contrib/ada/buffer_demo.adb
gs/zlib/contrib/ada/mtest.adb
gs/zlib/contrib/ada/read.adb
gs/zlib/contrib/ada/readme.txt
gs/zlib/contrib/ada/test.adb
gs/zlib/contrib/ada/zlib-streams.adb
gs/zlib/contrib/ada/zlib-streams.ads
gs/zlib/contrib/ada/zlib-thin.adb
gs/zlib/contrib/ada/zlib-thin.ads
gs/zlib/contrib/ada/zlib.adb
gs/zlib/contrib/ada/zlib.ads
gs/zlib/contrib/ada/zlib.gpr
gs/zlib/contrib/amd64/amd64-match.S
gs/zlib/contrib/asm686/README.686
gs/zlib/contrib/asm686/match.S
gs/zlib/contrib/blast/Makefile
gs/zlib/contrib/blast/README
gs/zlib/contrib/blast/blast.c
gs/zlib/contrib/blast/blast.h
gs/zlib/contrib/blast/test.pk
gs/zlib/contrib/blast/test.txt
gs/zlib/contrib/delphi/ZLib.pas
gs/zlib/contrib/delphi/ZLibConst.pas
gs/zlib/contrib/delphi/readme.txt
gs/zlib/contrib/delphi/zlibd32.mak
gs/zlib/contrib/dotzlib/DotZLib.build
gs/zlib/contrib/dotzlib/DotZLib.chm
gs/zlib/contrib/dotzlib/DotZLib.sln
gs/zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs
gs/zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs
gs/zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs
gs/zlib/contrib/dotzlib/DotZLib/CodecBase.cs
gs/zlib/contrib/dotzlib/DotZLib/Deflater.cs
gs/zlib/contrib/dotzlib/DotZLib/DotZLib.cs
gs/zlib/contrib/dotzlib/DotZLib/DotZLib.csproj
gs/zlib/contrib/dotzlib/DotZLib/GZipStream.cs
gs/zlib/contrib/dotzlib/DotZLib/Inflater.cs
gs/zlib/contrib/dotzlib/DotZLib/UnitTests.cs
gs/zlib/contrib/dotzlib/LICENSE_1_0.txt
gs/zlib/contrib/dotzlib/readme.txt
gs/zlib/contrib/gcc_gvmat64/gvmat64.S
gs/zlib/contrib/infback9/README
gs/zlib/contrib/infback9/infback9.c
gs/zlib/contrib/infback9/infback9.h
gs/zlib/contrib/infback9/inffix9.h
gs/zlib/contrib/infback9/inflate9.h
gs/zlib/contrib/infback9/inftree9.c
gs/zlib/contrib/infback9/inftree9.h
gs/zlib/contrib/inflate86/inffas86.c
gs/zlib/contrib/inflate86/inffast.S
gs/zlib/contrib/iostream/test.cpp
gs/zlib/contrib/iostream/zfstream.cpp
gs/zlib/contrib/iostream/zfstream.h
gs/zlib/contrib/iostream2/zstream.h
gs/zlib/contrib/iostream2/zstream_test.cpp
gs/zlib/contrib/iostream3/README
gs/zlib/contrib/iostream3/TODO
gs/zlib/contrib/iostream3/test.cc
gs/zlib/contrib/iostream3/zfstream.cc
gs/zlib/contrib/iostream3/zfstream.h
gs/zlib/contrib/masmx64/bld_ml64.bat
gs/zlib/contrib/masmx64/gvmat64.asm
gs/zlib/contrib/masmx64/inffas8664.c
gs/zlib/contrib/masmx64/inffasx64.asm
gs/zlib/contrib/masmx64/readme.txt
gs/zlib/contrib/masmx86/bld_ml32.bat
gs/zlib/contrib/masmx86/inffas32.asm
gs/zlib/contrib/masmx86/match686.asm
gs/zlib/contrib/masmx86/readme.txt
gs/zlib/contrib/minizip/Makefile
gs/zlib/contrib/minizip/Makefile.am
gs/zlib/contrib/minizip/MiniZip64_Changes.txt
gs/zlib/contrib/minizip/MiniZip64_info.txt
gs/zlib/contrib/minizip/configure.ac
gs/zlib/contrib/minizip/crypt.h
gs/zlib/contrib/minizip/ioapi.c
gs/zlib/contrib/minizip/ioapi.h
gs/zlib/contrib/minizip/iowin32.c
gs/zlib/contrib/minizip/iowin32.h
gs/zlib/contrib/minizip/make_vms.com
gs/zlib/contrib/minizip/miniunz.c
gs/zlib/contrib/minizip/miniunzip.1
gs/zlib/contrib/minizip/minizip.1
gs/zlib/contrib/minizip/minizip.c
gs/zlib/contrib/minizip/minizip.pc.in
gs/zlib/contrib/minizip/mztools.c
gs/zlib/contrib/minizip/mztools.h
gs/zlib/contrib/minizip/unzip.c
gs/zlib/contrib/minizip/unzip.h
gs/zlib/contrib/minizip/zip.c
gs/zlib/contrib/minizip/zip.h
gs/zlib/contrib/pascal/example.pas
gs/zlib/contrib/pascal/readme.txt
gs/zlib/contrib/pascal/zlibd32.mak
gs/zlib/contrib/pascal/zlibpas.pas
gs/zlib/contrib/puff/Makefile
gs/zlib/contrib/puff/README
gs/zlib/contrib/puff/puff.c
gs/zlib/contrib/puff/puff.h
gs/zlib/contrib/puff/pufftest.c
gs/zlib/contrib/puff/zeros.raw
gs/zlib/contrib/testzlib/testzlib.c
gs/zlib/contrib/testzlib/testzlib.txt
gs/zlib/contrib/untgz/Makefile
gs/zlib/contrib/untgz/Makefile.msc
gs/zlib/contrib/untgz/untgz.c
gs/zlib/contrib/vstudio/readme.txt
gs/zlib/contrib/vstudio/vc10/miniunz.vcxproj
gs/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters
gs/zlib/contrib/vstudio/vc10/minizip.vcxproj
gs/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters
gs/zlib/contrib/vstudio/vc10/testzlib.vcxproj
gs/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters
gs/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj
gs/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters
gs/zlib/contrib/vstudio/vc10/zlib.rc
gs/zlib/contrib/vstudio/vc10/zlibstat.vcxproj
gs/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters
gs/zlib/contrib/vstudio/vc10/zlibvc.def
gs/zlib/contrib/vstudio/vc10/zlibvc.sln
gs/zlib/contrib/vstudio/vc10/zlibvc.vcxproj
gs/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters
gs/zlib/contrib/vstudio/vc11/miniunz.vcxproj
gs/zlib/contrib/vstudio/vc11/minizip.vcxproj
gs/zlib/contrib/vstudio/vc11/testzlib.vcxproj
gs/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj
gs/zlib/contrib/vstudio/vc11/zlib.rc
gs/zlib/contrib/vstudio/vc11/zlibstat.vcxproj
gs/zlib/contrib/vstudio/vc11/zlibvc.def
gs/zlib/contrib/vstudio/vc11/zlibvc.sln
gs/zlib/contrib/vstudio/vc11/zlibvc.vcxproj
gs/zlib/contrib/vstudio/vc9/miniunz.vcproj
gs/zlib/contrib/vstudio/vc9/minizip.vcproj
gs/zlib/contrib/vstudio/vc9/testzlib.vcproj
gs/zlib/contrib/vstudio/vc9/testzlibdll.vcproj
gs/zlib/contrib/vstudio/vc9/zlib.rc
gs/zlib/contrib/vstudio/vc9/zlibstat.vcproj
gs/zlib/contrib/vstudio/vc9/zlibvc.def
gs/zlib/contrib/vstudio/vc9/zlibvc.sln
gs/zlib/contrib/vstudio/vc9/zlibvc.vcproj
gs/zlib/crc32.c
gs/zlib/crc32.h
gs/zlib/deflate.c
gs/zlib/deflate.h
gs/zlib/doc/algorithm.txt
gs/zlib/doc/rfc1950.txt
gs/zlib/doc/rfc1951.txt
gs/zlib/doc/rfc1952.txt
gs/zlib/doc/txtvsbin.txt
gs/zlib/examples/README.examples
gs/zlib/examples/enough.c
gs/zlib/examples/fitblk.c
gs/zlib/examples/gun.c
gs/zlib/examples/gzappend.c
gs/zlib/examples/gzjoin.c
gs/zlib/examples/gzlog.c
gs/zlib/examples/gzlog.h
gs/zlib/examples/zlib_how.html
gs/zlib/examples/zpipe.c
gs/zlib/examples/zran.c
gs/zlib/gzclose.c
gs/zlib/gzguts.h
gs/zlib/gzlib.c
gs/zlib/gzread.c
gs/zlib/gzwrite.c
gs/zlib/infback.c
gs/zlib/inffast.c
gs/zlib/inffast.h
gs/zlib/inffixed.h
gs/zlib/inflate.c
gs/zlib/inflate.h
gs/zlib/inftrees.c
gs/zlib/inftrees.h
gs/zlib/make_vms.com
gs/zlib/msdos/Makefile.bor
gs/zlib/msdos/Makefile.dj2
gs/zlib/msdos/Makefile.emx
gs/zlib/msdos/Makefile.msc
gs/zlib/msdos/Makefile.tc
gs/zlib/nintendods/Makefile
gs/zlib/nintendods/README
gs/zlib/old/Makefile.emx
gs/zlib/old/Makefile.riscos
gs/zlib/old/README
gs/zlib/old/descrip.mms
gs/zlib/old/os2/Makefile.os2
gs/zlib/old/os2/zlib.def
gs/zlib/old/visual-basic.txt
gs/zlib/qnx/package.qpg
gs/zlib/test/example.c
gs/zlib/test/infcover.c
gs/zlib/test/minigzip.c
gs/zlib/treebuild.xml
gs/zlib/trees.c
gs/zlib/trees.h
gs/zlib/uncompr.c
gs/zlib/watcom/watcom_f.mak
gs/zlib/watcom/watcom_l.mak
gs/zlib/win32/DLL_FAQ.txt
gs/zlib/win32/Makefile.bor
gs/zlib/win32/Makefile.gcc
gs/zlib/win32/Makefile.msc
gs/zlib/win32/README-WIN32.txt
gs/zlib/win32/VisualC.txt
gs/zlib/win32/zlib.def
gs/zlib/win32/zlib1.rc
gs/zlib/zconf.h
gs/zlib/zconf.h.cmakein
gs/zlib/zconf.h.in
gs/zlib/zlib.3
gs/zlib/zlib.3.pdf
gs/zlib/zlib.h
gs/zlib/zlib.map
gs/zlib/zlib.pc.cmakein
gs/zlib/zlib.pc.in
gs/zlib/zlib2ansi
gs/zlib/zutil.c
gs/zlib/zutil.h
iccprofiles/default_cmyk.icc
iccprofiles/default_gray.icc
iccprofiles/default_rgb.icc
iccprofiles/gray_to_k.icc
iccprofiles/lab.icc
iccprofiles/ps_cmyk.icc
iccprofiles/ps_gray.icc
iccprofiles/ps_rgb.icc
iccprofiles/sgray.icc
iccprofiles/srgb.icc
ijs/Makefile.am
ijs/Makefile.in
ijs/README
ijs/autogen.sh
ijs/common.mak
ijs/compile
ijs/config.guess
ijs/config.sub
ijs/configure
ijs/configure.ac
ijs/ijs-config.1
ijs/ijs-config.in
ijs/ijs.c
ijs/ijs.h
ijs/ijs.pc.in
ijs/ijs_client.c
ijs/ijs_client.h
ijs/ijs_client_example.c
ijs/ijs_exec_unix.c
ijs/ijs_exec_win.c
ijs/ijs_server.c
ijs/ijs_server.h
ijs/ijs_server_example.c
ijs/ijs_spec.pdf
ijs/ijs_spec.ps
ijs/ijs_spec.sgml
ijs/install-sh
ijs/libtool
ijs/ltmain.sh
ijs/missing
ijs/state.eps
ijs/state.fig
ijs/unistd_.h
ijs/unix.mak
ijs/windows.mak
jbig2dec/.gitignore
jbig2dec/CHANGES
jbig2dec/COPYING
jbig2dec/LICENSE
jbig2dec/Makefile.am
jbig2dec/Makefile.unix
jbig2dec/README
jbig2dec/annex-h.jbig2
jbig2dec/autogen.sh
jbig2dec/config_win32.h
jbig2dec/configure.ac
jbig2dec/getopt.c
jbig2dec/getopt.h
jbig2dec/getopt1.c
jbig2dec/jbig2.c
jbig2dec/jbig2.h
jbig2dec/jbig2_arith.c
jbig2dec/jbig2_arith.h
jbig2dec/jbig2_arith_iaid.c
jbig2dec/jbig2_arith_iaid.h
jbig2dec/jbig2_arith_int.c
jbig2dec/jbig2_arith_int.h
jbig2dec/jbig2_generic.c
jbig2dec/jbig2_generic.h
jbig2dec/jbig2_halftone.c
jbig2dec/jbig2_halftone.h
jbig2dec/jbig2_huffman.c
jbig2dec/jbig2_huffman.h
jbig2dec/jbig2_hufftab.h
jbig2dec/jbig2_image.c
jbig2dec/jbig2_image.h
jbig2dec/jbig2_image_pbm.c
jbig2dec/jbig2_image_png.c
jbig2dec/jbig2_metadata.c
jbig2dec/jbig2_metadata.h
jbig2dec/jbig2_mmr.c
jbig2dec/jbig2_mmr.h
jbig2dec/jbig2_page.c
jbig2dec/jbig2_priv.h
jbig2dec/jbig2_refinement.c
jbig2dec/jbig2_segment.c
jbig2dec/jbig2_symbol_dict.c
jbig2dec/jbig2_symbol_dict.h
jbig2dec/jbig2_text.c
jbig2dec/jbig2_text.h
jbig2dec/jbig2dec.1
jbig2dec/jbig2dec.c
jbig2dec/memcmp.c
jbig2dec/memento.c
jbig2dec/memento.h
jbig2dec/msvc.mak
jbig2dec/os_types.h
jbig2dec/pbm2png.c
jbig2dec/sha1.c
jbig2dec/sha1.h
jbig2dec/snprintf.c
jbig2dec/test_jbig2dec.py
jpeg/Makefile.am
jpeg/Makefile.in
jpeg/README
jpeg/aclocal.m4
jpeg/ar-lib
jpeg/cderror.h
jpeg/cdjpeg.c
jpeg/cdjpeg.h
jpeg/change.log
jpeg/cjpeg.1
jpeg/cjpeg.c
jpeg/ckconfig.c
jpeg/coderules.txt
jpeg/compile
jpeg/config.guess
jpeg/config.sub
jpeg/configure
jpeg/configure.ac
jpeg/depcomp
jpeg/djpeg.1
jpeg/djpeg.c
jpeg/example.c
jpeg/filelist.txt
jpeg/install-sh
jpeg/install.txt
jpeg/jaricom.c
jpeg/jcapimin.c
jpeg/jcapistd.c
jpeg/jcarith.c
jpeg/jccoefct.c
jpeg/jccolor.c
jpeg/jcdctmgr.c
jpeg/jchuff.c
jpeg/jcinit.c
jpeg/jcmainct.c
jpeg/jcmarker.c
jpeg/jcmaster.c
jpeg/jcomapi.c
jpeg/jconfig.bcc
jpeg/jconfig.cfg
jpeg/jconfig.dj
jpeg/jconfig.mac
jpeg/jconfig.manx
jpeg/jconfig.mc6
jpeg/jconfig.sas
jpeg/jconfig.st
jpeg/jconfig.txt
jpeg/jconfig.vc
jpeg/jconfig.vms
jpeg/jconfig.wat
jpeg/jcparam.c
jpeg/jcprepct.c
jpeg/jcsample.c
jpeg/jctrans.c
jpeg/jdapimin.c
jpeg/jdapistd.c
jpeg/jdarith.c
jpeg/jdatadst.c
jpeg/jdatasrc.c
jpeg/jdcoefct.c
jpeg/jdcolor.c
jpeg/jdct.h
jpeg/jddctmgr.c
jpeg/jdhuff.c
jpeg/jdinput.c
jpeg/jdmainct.c
jpeg/jdmarker.c
jpeg/jdmaster.c
jpeg/jdmerge.c
jpeg/jdpostct.c
jpeg/jdsample.c
jpeg/jdtrans.c
jpeg/jerror.c
jpeg/jerror.h
jpeg/jfdctflt.c
jpeg/jfdctfst.c
jpeg/jfdctint.c
jpeg/jidctflt.c
jpeg/jidctfst.c
jpeg/jidctint.c
jpeg/jinclude.h
jpeg/jmemansi.c
jpeg/jmemdos.c
jpeg/jmemdosa.asm
jpeg/jmemmac.c
jpeg/jmemmgr.c
jpeg/jmemname.c
jpeg/jmemnobs.c
jpeg/jmemsys.h
jpeg/jmorecfg.h
jpeg/jpegint.h
jpeg/jpeglib.h
jpeg/jpegtran.1
jpeg/jpegtran.c
jpeg/jquant1.c
jpeg/jquant2.c
jpeg/jutils.c
jpeg/jversion.h
jpeg/libjpeg.map
jpeg/libjpeg.txt
jpeg/ltmain.sh
jpeg/makcjpeg.st
jpeg/makdjpeg.st
jpeg/makeadsw.vc6
jpeg/makeasln.v10
jpeg/makecdep.vc6
jpeg/makecdsp.vc6
jpeg/makecfil.v10
jpeg/makecmak.vc6
jpeg/makecvcx.v10
jpeg/makeddep.vc6
jpeg/makeddsp.vc6
jpeg/makedfil.v10
jpeg/makedmak.vc6
jpeg/makedvcx.v10
jpeg/makefile.ansi
jpeg/makefile.bcc
jpeg/makefile.dj
jpeg/makefile.manx
jpeg/makefile.mc6
jpeg/makefile.mms
jpeg/makefile.sas
jpeg/makefile.unix
jpeg/makefile.vc
jpeg/makefile.vms
jpeg/makefile.wat
jpeg/makejdep.vc6
jpeg/makejdsp.vc6
jpeg/makejdsw.vc6
jpeg/makejfil.v10
jpeg/makejmak.vc6
jpeg/makejsln.v10
jpeg/makejvcx.v10
jpeg/makeproj.mac
jpeg/makerdep.vc6
jpeg/makerdsp.vc6
jpeg/makerfil.v10
jpeg/makermak.vc6
jpeg/makervcx.v10
jpeg/maketdep.vc6
jpeg/maketdsp.vc6
jpeg/maketfil.v10
jpeg/maketmak.vc6
jpeg/maketvcx.v10
jpeg/makewdep.vc6
jpeg/makewdsp.vc6
jpeg/makewfil.v10
jpeg/makewmak.vc6
jpeg/makewvcx.v10
jpeg/makljpeg.st
jpeg/maktjpeg.st
jpeg/makvms.opt
jpeg/missing
jpeg/rdbmp.c
jpeg/rdcolmap.c
jpeg/rdgif.c
jpeg/rdjpgcom.1
jpeg/rdjpgcom.c
jpeg/rdppm.c
jpeg/rdrle.c
jpeg/rdswitch.c
jpeg/rdtarga.c
jpeg/structure.txt
jpeg/testimg.bmp
jpeg/testimg.jpg
jpeg/testimg.ppm
jpeg/testimgp.jpg
jpeg/testorig.jpg
jpeg/testprog.jpg
jpeg/transupp.c
jpeg/transupp.h
jpeg/usage.txt
jpeg/wizard.txt
jpeg/wrbmp.c
jpeg/wrgif.c
jpeg/wrjpgcom.1
jpeg/wrjpgcom.c
jpeg/wrppm.c
jpeg/wrrle.c
jpeg/wrtarga.c
jpegxr/APP.rc
jpegxr/APP.vcproj
jpegxr/COPYRIGHT.txt
jpegxr/DLL.rc
jpegxr/DLL.vcproj
jpegxr/JPEG-XR.sln
jpegxr/Makefile
jpegxr/README.txt
jpegxr/algo.c
jpegxr/api.c
jpegxr/app_resource.h
jpegxr/cr_parse.c
jpegxr/cw_emit.c
jpegxr/dll_resource.h
jpegxr/dllmain.c
jpegxr/file.c
jpegxr/file.h
jpegxr/flags.c
jpegxr/init.c
jpegxr/io.c
jpegxr/jpegxr.c
jpegxr/jpegxr.h
jpegxr/jpegxr_pixelformat.c
jpegxr/jxr_priv.h
jpegxr/my_getopt-1.5/LICENSE
jpegxr/my_getopt-1.5/getopt.h
jpegxr/my_getopt-1.5/my_getopt.c
jpegxr/my_getopt-1.5/my_getopt.h
jpegxr/qp.tab.c
jpegxr/qp.tab.h
jpegxr/qp_lexor.c
jpegxr/qp_lexor.lex
jpegxr/qp_parse.y
jpegxr/r_parse.c
jpegxr/r_strip.c
jpegxr/r_tile_frequency.c
jpegxr/r_tile_spatial.c
jpegxr/sample.qp
jpegxr/stdint_minimal.h
jpegxr/versions-windows.txt
jpegxr/w_emit.c
jpegxr/w_strip.c
jpegxr/w_tile_frequency.c
jpegxr/w_tile_spatial.c
jpegxr/x_strip.c
language_switch/pspcl6_gcc.mak
language_switch/pspcl6_msvc.mak
lcms2/AUTHORS
lcms2/COPYING
lcms2/ChangeLog
lcms2/INSTALL
lcms2/Lib/BC/BC.txt
lcms2/Lib/MS/MS.TXT
lcms2/Makefile.am
lcms2/Makefile.in
lcms2/Projects/.gitignore
lcms2/Projects/BorlandC_5.5/lcms2.rc
lcms2/Projects/BorlandC_5.5/lcmsdll.lk
lcms2/Projects/BorlandC_5.5/lcmsdll.lst
lcms2/Projects/BorlandC_5.5/mklcmsdll.bat
lcms2/Projects/VC2008/jpegicc/jpegicc.vcproj
lcms2/Projects/VC2008/lcms2.rc
lcms2/Projects/VC2008/lcms2.sln
lcms2/Projects/VC2008/lcms2_DLL/lcms2_DLL.vcproj
lcms2/Projects/VC2008/lcms2_static/lcms2_static.vcproj
lcms2/Projects/VC2008/linkicc/linkicc.vcproj
lcms2/Projects/VC2008/psicc/psicc.vcproj
lcms2/Projects/VC2008/resource.h
lcms2/Projects/VC2008/testbed/testbed.vcproj
lcms2/Projects/VC2008/tiffdiff/tiffdiff.vcproj
lcms2/Projects/VC2008/tifficc/tifficc.vcproj
lcms2/Projects/VC2008/transicc/transicc.vcproj
lcms2/Projects/VC2010/jpegicc/jpegicc.vcproj
lcms2/Projects/VC2010/jpegicc/jpegicc.vcxproj
lcms2/Projects/VC2010/jpegicc/jpegicc.vcxproj.filters
lcms2/Projects/VC2010/lcms2.rc
lcms2/Projects/VC2010/lcms2.sln
lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcproj
lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcxproj
lcms2/Projects/VC2010/lcms2_DLL/lcms2_DLL.vcxproj.filters
lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcproj
lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcxproj
lcms2/Projects/VC2010/lcms2_static/lcms2_static.vcxproj.filters
lcms2/Projects/VC2010/linkicc/linkicc.vcproj
lcms2/Projects/VC2010/linkicc/linkicc.vcxproj
lcms2/Projects/VC2010/linkicc/linkicc.vcxproj.filters
lcms2/Projects/VC2010/psicc/psicc.vcproj
lcms2/Projects/VC2010/psicc/psicc.vcxproj
lcms2/Projects/VC2010/psicc/psicc.vcxproj.filters
lcms2/Projects/VC2010/resource.h
lcms2/Projects/VC2010/testbed/testbed.vcproj
lcms2/Projects/VC2010/testbed/testbed.vcxproj
lcms2/Projects/VC2010/testbed/testbed.vcxproj.filters
lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcproj
lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcxproj
lcms2/Projects/VC2010/tiffdiff/tiffdiff.vcxproj.filters
lcms2/Projects/VC2010/tifficc/tifficc.vcproj
lcms2/Projects/VC2010/tifficc/tifficc.vcxproj
lcms2/Projects/VC2010/tifficc/tifficc.vcxproj.filters
lcms2/Projects/VC2010/transicc/transicc.vcproj
lcms2/Projects/VC2010/transicc/transicc.vcxproj
lcms2/Projects/VC2010/transicc/transicc.vcxproj.filters
lcms2/Projects/VC2012/jpegicc/jpegicc.vcproj
lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj
lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj.filters
lcms2/Projects/VC2012/lcms2.rc
lcms2/Projects/VC2012/lcms2.sln
lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcproj
lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj
lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj.filters
lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcproj
lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj
lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj.filters
lcms2/Projects/VC2012/linkicc/linkicc.vcproj
lcms2/Projects/VC2012/linkicc/linkicc.vcxproj
lcms2/Projects/VC2012/linkicc/linkicc.vcxproj.filters
lcms2/Projects/VC2012/psicc/psicc.vcproj
lcms2/Projects/VC2012/psicc/psicc.vcxproj
lcms2/Projects/VC2012/psicc/psicc.vcxproj.filters
lcms2/Projects/VC2012/resource.h
lcms2/Projects/VC2012/testbed/testbed.vcproj
lcms2/Projects/VC2012/testbed/testbed.vcxproj
lcms2/Projects/VC2012/testbed/testbed.vcxproj.filters
lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcproj
lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj
lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj.filters
lcms2/Projects/VC2012/tifficc/tifficc.vcproj
lcms2/Projects/VC2012/tifficc/tifficc.vcxproj
lcms2/Projects/VC2012/tifficc/tifficc.vcxproj.filters
lcms2/Projects/VC2012/transicc/transicc.vcproj
lcms2/Projects/VC2012/transicc/transicc.vcxproj
lcms2/Projects/VC2012/transicc/transicc.vcxproj.filters
lcms2/Projects/cppcheck/lcms2.cppcheck
lcms2/Projects/mac/._.DS_Store
lcms2/Projects/mac/LittleCMS/._.DS_Store
lcms2/Projects/mac/LittleCMS/English.lproj/InfoPlist.strings
lcms2/Projects/mac/LittleCMS/Info.plist
lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.mode1v3
lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.pbxuser
lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/project.pbxproj
lcms2/Projects/mac/LittleCMS/LittleCMS_Prefix.pch
lcms2/Projects/mac/LittleCMS/TestBed-Info.plist
lcms2/README.1ST
lcms2/aclocal.m4
lcms2/autogen.sh
lcms2/config.guess
lcms2/config.sub
lcms2/configure
lcms2/configure.ac
lcms2/depcomp
lcms2/doc/LittleCMS2.6 API.pdf
lcms2/doc/LittleCMS2.6 Plugin API.pdf
lcms2/doc/LittleCMS2.6 tutorial.pdf
lcms2/doc/src.zip
lcms2/include/Makefile.am
lcms2/include/Makefile.in
lcms2/include/lcms2.h
lcms2/include/lcms2_plugin.h
lcms2/install-sh
lcms2/lcms2.pc.in
lcms2/ltmain.sh
lcms2/m4/acx_pthread.m4
lcms2/missing
lcms2/src/Makefile.am
lcms2/src/Makefile.in
lcms2/src/cmscam02.c
lcms2/src/cmscgats.c
lcms2/src/cmscnvrt.c
lcms2/src/cmserr.c
lcms2/src/cmsgamma.c
lcms2/src/cmsgmt.c
lcms2/src/cmshalf.c
lcms2/src/cmsintrp.c
lcms2/src/cmsio0.c
lcms2/src/cmsio1.c
lcms2/src/cmslut.c
lcms2/src/cmsmd5.c
lcms2/src/cmsmtrx.c
lcms2/src/cmsnamed.c
lcms2/src/cmsopt.c
lcms2/src/cmspack.c
lcms2/src/cmspcs.c
lcms2/src/cmsplugin.c
lcms2/src/cmsps2.c
lcms2/src/cmssamp.c
lcms2/src/cmssm.c
lcms2/src/cmstypes.c
lcms2/src/cmsvirt.c
lcms2/src/cmswtpnt.c
lcms2/src/cmsxform.c
lcms2/src/extra_xform.h
lcms2/src/lcms2.def
lcms2/src/lcms2_internal.h
lcms2/testbed/Makefile.am
lcms2/testbed/Makefile.in
lcms2/testbed/bad.icc
lcms2/testbed/ibm-t61.icc
lcms2/testbed/new.icc
lcms2/testbed/test1.icc
lcms2/testbed/test2.icc
lcms2/testbed/test3.icc
lcms2/testbed/test4.icc
lcms2/testbed/test5.icc
lcms2/testbed/testcms2.c
lcms2/testbed/testcms2.h
lcms2/testbed/testplugin.c
lcms2/testbed/testthread.cpp
lcms2/testbed/toosmall.icc
lcms2/testbed/zoo_icc.c
lcms2/utils/common/utils.h
lcms2/utils/common/vprf.c
lcms2/utils/common/xgetopt.c
lcms2/utils/delphi/delphidemo.dpr
lcms2/utils/delphi/delphidemo.dproj
lcms2/utils/delphi/delphidemo.res
lcms2/utils/delphi/demo1.dfm
lcms2/utils/delphi/demo1.pas
lcms2/utils/delphi/lcms2.dll
lcms2/utils/delphi/lcms2dll.pas
lcms2/utils/jpgicc/Makefile.am
lcms2/utils/jpgicc/Makefile.in
lcms2/utils/jpgicc/iccjpeg.c
lcms2/utils/jpgicc/iccjpeg.h
lcms2/utils/jpgicc/jpgicc.1
lcms2/utils/jpgicc/jpgicc.c
lcms2/utils/linkicc/Makefile.am
lcms2/utils/linkicc/Makefile.in
lcms2/utils/linkicc/linkicc.1
lcms2/utils/linkicc/linkicc.c
lcms2/utils/matlab/icctrans.c
lcms2/utils/matlab/lcms_rsp
lcms2/utils/psicc/Makefile.am
lcms2/utils/psicc/Makefile.in
lcms2/utils/psicc/psicc.1
lcms2/utils/psicc/psicc.c
lcms2/utils/samples/Makefile.am
lcms2/utils/samples/Makefile.in
lcms2/utils/samples/itufax.c
lcms2/utils/samples/mkcmy.c
lcms2/utils/samples/mkgrayer.c
lcms2/utils/samples/mktiff8.c
lcms2/utils/samples/roundtrip.c
lcms2/utils/samples/vericc.c
lcms2/utils/samples/wtpt.1
lcms2/utils/samples/wtpt.c
lcms2/utils/tificc/Makefile.am
lcms2/utils/tificc/Makefile.in
lcms2/utils/tificc/tifdiff.c
lcms2/utils/tificc/tificc.1
lcms2/utils/tificc/tificc.c
lcms2/utils/transicc/Makefile.am
lcms2/utils/transicc/Makefile.in
lcms2/utils/transicc/transicc.1
lcms2/utils/transicc/transicc.c
lib/EndOfTask.ps
lib/FAPIconfig-FCO
lib/FCOfontmap-PCLPS3
lib/FCOfontmap-PS3
lib/Fontmap.ATB
lib/Fontmap.ATM
lib/Fontmap.OS2
lib/Fontmap.OSF
lib/Fontmap.SGI
lib/Fontmap.Sol
lib/Fontmap.URW-136.T1
lib/Fontmap.URW-136.TT
lib/Fontmap.Ult
lib/Fontmap.VMS
lib/Info-macos.plist
lib/PDFA_def.ps
lib/PDFX_def.ps
lib/acctest.ps
lib/addxchar.ps
lib/afmdiff.awk
lib/align.ps
lib/bj8.rpd
lib/bj8gc12f.upp
lib/bj8hg12f.upp
lib/bj8oh06n.upp
lib/bj8pa06n.upp
lib/bj8pp12f.upp
lib/bj8ts06n.upp
lib/bjc610a0.upp
lib/bjc610a1.upp
lib/bjc610a2.upp
lib/bjc610a3.upp
lib/bjc610a4.upp
lib/bjc610a5.upp
lib/bjc610a6.upp
lib/bjc610a7.upp
lib/bjc610a8.upp
lib/bjc610b1.upp
lib/bjc610b2.upp
lib/bjc610b3.upp
lib/bjc610b4.upp
lib/bjc610b6.upp
lib/bjc610b7.upp
lib/bjc610b8.upp
lib/caption.ps
lib/cat.ps
lib/cbjc600.ppd
lib/cbjc800.ppd
lib/cdj550.upp
lib/cdj690.upp
lib/cdj690ec.upp
lib/cid2code.ps
lib/decrypt.ps
lib/dnj750c.upp
lib/dnj750m.upp
lib/docie.ps
lib/dvipdf
lib/eps2eps
lib/eps2eps.bat
lib/eps2eps.cmd
lib/font2c
lib/font2c.bat
lib/font2c.cmd
lib/font2c.ps
lib/font2pcl.ps
lib/ghostpdf.README
lib/ghostpdf.cat
lib/ghostpdf.inf
lib/ghostpdf.ppd
lib/gs_ce_e.ps
lib/gs_cmdl.ps
lib/gs_il2_e.ps
lib/gs_kanji.ps
lib/gs_ksb_e.ps
lib/gs_l.xbm
lib/gs_l.xpm
lib/gs_l_m.xbm
lib/gs_lgo_e.ps
lib/gs_lgx_e.ps
lib/gs_m.xbm
lib/gs_m.xpm
lib/gs_m_m.xbm
lib/gs_pfile.ps
lib/gs_rdlin.ps
lib/gs_s.xbm
lib/gs_s.xpm
lib/gs_s_m.xbm
lib/gs_t.xbm
lib/gs_t.xpm
lib/gs_t_m.xbm
lib/gs_wl1_e.ps
lib/gs_wl2_e.ps
lib/gs_wl5_e.ps
lib/gsbj
lib/gsbj.bat
lib/gsdj
lib/gsdj.bat
lib/gsdj500
lib/gsdj500.bat
lib/gslj
lib/gslj.bat
lib/gslp
lib/gslp.bat
lib/gslp.ps
lib/gsnd
lib/gsnd.bat
lib/gsndt.bat
lib/gsnup.ps
lib/gssetgs.bat
lib/gssetgs32.bat
lib/gssetgs64.bat
lib/gst.bat
lib/gstt.bat
lib/ht_ccsto.ps
lib/image-qa.ps
lib/impath.ps
lib/jispaper.ps
lib/jobseparator.ps
lib/landscap.ps
lib/level1.ps
lib/lines.ps
lib/lp386.bat
lib/lp386r2.bat
lib/lpgs.bat
lib/lpr2.bat
lib/lprsetup.sh
lib/markhint.ps
lib/markpath.ps
lib/mkcidfm.ps
lib/necp2x.upp
lib/necp2x6.upp
lib/opdfread.ps
lib/packfile.ps
lib/pcharstr.ps
lib/pdf2dsc
lib/pdf2dsc.bat
lib/pdf2dsc.ps
lib/pdf2ps
lib/pdf2ps.bat
lib/pdf2ps.cmd
lib/pdfwrite.ps
lib/pf2afm
lib/pf2afm.bat
lib/pf2afm.cmd
lib/pf2afm.ps
lib/pfbtopfa
lib/pfbtopfa.bat
lib/pfbtopfa.ps
lib/pftogsf.bat
lib/ppath.ps
lib/pphs
lib/pphs.ps
lib/prfont.ps
lib/printafm
lib/printafm.ps
lib/ps2ai.ps
lib/ps2ascii
lib/ps2ascii.bat
lib/ps2ascii.cmd
lib/ps2ascii.ps
lib/ps2epsi
lib/ps2epsi.bat
lib/ps2epsi.cmd
lib/ps2epsi.ps
lib/ps2pdf
lib/ps2pdf.bat
lib/ps2pdf.cmd
lib/ps2pdf12
lib/ps2pdf12.bat
lib/ps2pdf12.cmd
lib/ps2pdf13
lib/ps2pdf13.bat
lib/ps2pdf13.cmd
lib/ps2pdf14
lib/ps2pdf14.bat
lib/ps2pdf14.cmd
lib/ps2pdfwr
lib/ps2pdfxx.bat
lib/ps2ps
lib/ps2ps.bat
lib/ps2ps.cmd
lib/ps2ps2
lib/ps2ps2.bat
lib/ps2ps2.cmd
lib/quit.ps
lib/ras1.upp
lib/ras24.upp
lib/ras3.upp
lib/ras32.upp
lib/ras4.upp
lib/ras8m.upp
lib/rinkj-2200-setup
lib/rollconv.ps
lib/showchar.ps
lib/showpage.ps
lib/st640ih.upp
lib/st640ihg.upp
lib/st640p.upp
lib/st640pg.upp
lib/st640pl.upp
lib/st640plg.upp
lib/stc.upp
lib/stc1520h.upp
lib/stc2.upp
lib/stc200_h.upp
lib/stc2_h.upp
lib/stc2s_h.upp
lib/stc300.upp
lib/stc300bl.upp
lib/stc300bm.upp
lib/stc500p.upp
lib/stc500ph.upp
lib/stc600ih.upp
lib/stc600p.upp
lib/stc600pl.upp
lib/stc640p.upp
lib/stc800ih.upp
lib/stc800p.upp
lib/stc800pl.upp
lib/stc_h.upp
lib/stc_l.upp
lib/stcany.upp
lib/stcany_h.upp
lib/stcinfo.ps
lib/stcolor.ps
lib/stocht.ps
lib/traceimg.ps
lib/traceop.ps
lib/type1enc.ps
lib/type1ops.ps
lib/uninfo.ps
lib/unix-lpr.sh
lib/unprot.ps
lib/viewcmyk.ps
lib/viewgif.ps
lib/viewjpeg.ps
lib/viewmiff.ps
lib/viewpbm.ps
lib/viewpcx.ps
lib/viewps2a.ps
lib/viewraw.ps
lib/viewrgb.ps
lib/wftopfa
lib/wftopfa.ps
lib/winmaps.ps
lib/wmakebat.bat
lib/wrfont.ps
lib/zeroline.ps
libpng/ANNOUNCE
libpng/CHANGES
libpng/CMakeLists.txt
libpng/INSTALL
libpng/LICENSE
libpng/Makefile.am
libpng/Makefile.in
libpng/README
libpng/TODO
libpng/aclocal.m4
libpng/arm/arm_init.c
libpng/arm/filter_neon.S
libpng/arm/filter_neon_intrinsics.c
libpng/autogen.sh
libpng/compile
libpng/config.guess
libpng/config.h.in
libpng/config.sub
libpng/configure
libpng/configure.ac
libpng/contrib/README.txt
libpng/contrib/arm-neon/README
libpng/contrib/arm-neon/android-ndk.c
libpng/contrib/arm-neon/linux-auxv.c
libpng/contrib/arm-neon/linux.c
libpng/contrib/conftest/README
libpng/contrib/conftest/read.dfa
libpng/contrib/conftest/s_read.dfa
libpng/contrib/conftest/s_write.dfa
libpng/contrib/conftest/simple.dfa
libpng/contrib/conftest/write.dfa
libpng/contrib/examples/README.txt
libpng/contrib/examples/iccfrompng.c
libpng/contrib/examples/pngpixel.c
libpng/contrib/examples/pngtopng.c
libpng/contrib/gregbook/COPYING
libpng/contrib/gregbook/LICENSE
libpng/contrib/gregbook/Makefile.mingw32
libpng/contrib/gregbook/Makefile.sgi
libpng/contrib/gregbook/Makefile.unx
libpng/contrib/gregbook/Makefile.w32
libpng/contrib/gregbook/README
libpng/contrib/gregbook/makevms.com
libpng/contrib/gregbook/readpng.c
libpng/contrib/gregbook/readpng.h
libpng/contrib/gregbook/readpng2.c
libpng/contrib/gregbook/readpng2.h
libpng/contrib/gregbook/readppm.c
libpng/contrib/gregbook/rpng-win.c
libpng/contrib/gregbook/rpng-x.c
libpng/contrib/gregbook/rpng2-win.c
libpng/contrib/gregbook/rpng2-x.c
libpng/contrib/gregbook/toucan.png
libpng/contrib/gregbook/wpng.c
libpng/contrib/gregbook/writepng.c
libpng/contrib/gregbook/writepng.h
libpng/contrib/libtests/fakepng.c
libpng/contrib/libtests/gentests.sh
libpng/contrib/libtests/makepng.c
libpng/contrib/libtests/pngimage.c
libpng/contrib/libtests/pngstest.c
libpng/contrib/libtests/pngunknown.c
libpng/contrib/libtests/pngvalid.c
libpng/contrib/libtests/readpng.c
libpng/contrib/libtests/tarith.c
libpng/contrib/libtests/timepng.c
libpng/contrib/pngminim/README
libpng/contrib/pngminim/decoder/README
libpng/contrib/pngminim/decoder/makefile
libpng/contrib/pngminim/decoder/pngusr.dfa
libpng/contrib/pngminim/decoder/pngusr.h
libpng/contrib/pngminim/encoder/README
libpng/contrib/pngminim/encoder/makefile
libpng/contrib/pngminim/encoder/pngusr.dfa
libpng/contrib/pngminim/encoder/pngusr.h
libpng/contrib/pngminim/preader/README
libpng/contrib/pngminim/preader/makefile
libpng/contrib/pngminim/preader/pngusr.dfa
libpng/contrib/pngminim/preader/pngusr.h
libpng/contrib/pngminus/README
libpng/contrib/pngminus/makefile.std
libpng/contrib/pngminus/makefile.tc3
libpng/contrib/pngminus/makevms.com
libpng/contrib/pngminus/png2pnm.bat
libpng/contrib/pngminus/png2pnm.c
libpng/contrib/pngminus/png2pnm.sh
libpng/contrib/pngminus/pngminus.bat
libpng/contrib/pngminus/pngminus.sh
libpng/contrib/pngminus/pnm2png.bat
libpng/contrib/pngminus/pnm2png.c
libpng/contrib/pngminus/pnm2png.sh
libpng/contrib/pngsuite/README
libpng/contrib/pngsuite/basn0g01.png
libpng/contrib/pngsuite/basn0g02.png
libpng/contrib/pngsuite/basn0g04.png
libpng/contrib/pngsuite/basn0g08.png
libpng/contrib/pngsuite/basn0g16.png
libpng/contrib/pngsuite/basn2c08.png
libpng/contrib/pngsuite/basn2c16.png
libpng/contrib/pngsuite/basn3p01.png
libpng/contrib/pngsuite/basn3p02.png
libpng/contrib/pngsuite/basn3p04.png
libpng/contrib/pngsuite/basn3p08.png
libpng/contrib/pngsuite/basn4a08.png
libpng/contrib/pngsuite/basn4a16.png
libpng/contrib/pngsuite/basn6a08.png
libpng/contrib/pngsuite/basn6a16.png
libpng/contrib/pngsuite/ftbbn0g01.png
libpng/contrib/pngsuite/ftbbn0g02.png
libpng/contrib/pngsuite/ftbbn0g04.png
libpng/contrib/pngsuite/ftbbn2c16.png
libpng/contrib/pngsuite/ftbbn3p08.png
libpng/contrib/pngsuite/ftbgn2c16.png
libpng/contrib/pngsuite/ftbgn3p08.png
libpng/contrib/pngsuite/ftbrn2c08.png
libpng/contrib/pngsuite/ftbwn0g16.png
libpng/contrib/pngsuite/ftbwn3p08.png
libpng/contrib/pngsuite/ftbyn3p08.png
libpng/contrib/pngsuite/ftp0n0g08.png
libpng/contrib/pngsuite/ftp0n2c08.png
libpng/contrib/pngsuite/ftp0n3p08.png
libpng/contrib/pngsuite/ftp1n3p08.png
libpng/contrib/tools/README.txt
libpng/contrib/tools/checksum-icc.c
libpng/contrib/tools/chkfmt
libpng/contrib/tools/cvtcolor.c
libpng/contrib/tools/intgamma.sh
libpng/contrib/tools/makesRGB.c
libpng/contrib/tools/png-fix-itxt.c
libpng/contrib/tools/pngfix.c
libpng/contrib/tools/sRGB.h
libpng/contrib/visupng/PngFile.c
libpng/contrib/visupng/PngFile.h
libpng/contrib/visupng/README.txt
libpng/contrib/visupng/VisualPng.c
libpng/contrib/visupng/VisualPng.dsp
libpng/contrib/visupng/VisualPng.dsw
libpng/contrib/visupng/VisualPng.ico
libpng/contrib/visupng/VisualPng.png
libpng/contrib/visupng/VisualPng.rc
libpng/contrib/visupng/cexcept.h
libpng/contrib/visupng/resource.h
libpng/depcomp
libpng/example.c
libpng/install-sh
libpng/libpng-config.in
libpng/libpng-manual.txt
libpng/libpng.3
libpng/libpng.pc.in
libpng/libpngpf.3
libpng/ltmain.sh
libpng/missing
libpng/png.5
libpng/png.c
libpng/png.h
libpng/pngbar.jpg
libpng/pngbar.png
libpng/pngconf.h
libpng/pngdebug.h
libpng/pngerror.c
libpng/pngget.c
libpng/pnginfo.h
libpng/pngmem.c
libpng/pngnow.png
libpng/pngpread.c
libpng/pngpriv.h
libpng/pngread.c
libpng/pngrio.c
libpng/pngrtran.c
libpng/pngrutil.c
libpng/pngset.c
libpng/pngstruct.h
libpng/pngtest.c
libpng/pngtest.png
libpng/pngtrans.c
libpng/pngusr.dfa
libpng/pngwio.c
libpng/pngwrite.c
libpng/pngwtran.c
libpng/pngwutil.c
libpng/projects/owatcom/libpng.tgt
libpng/projects/owatcom/libpng.wpj
libpng/projects/owatcom/pngconfig.mak
libpng/projects/owatcom/pngstest.tgt
libpng/projects/owatcom/pngtest.tgt
libpng/projects/owatcom/pngvalid.tgt
libpng/projects/visualc71/PRJ0041.mak
libpng/projects/visualc71/README.txt
libpng/projects/visualc71/README_zlib.txt
libpng/projects/visualc71/libpng.sln
libpng/projects/visualc71/libpng.vcproj
libpng/projects/visualc71/pngtest.vcproj
libpng/projects/visualc71/zlib.vcproj
libpng/projects/vstudio/WARNING
libpng/projects/vstudio/libpng/libpng.vcxproj
libpng/projects/vstudio/pnglibconf/pnglibconf.vcxproj
libpng/projects/vstudio/pngstest/pngstest.vcxproj
libpng/projects/vstudio/pngtest/pngtest.vcxproj
libpng/projects/vstudio/pngunknown/pngunknown.vcxproj
libpng/projects/vstudio/pngvalid/pngvalid.vcxproj
libpng/projects/vstudio/readme.txt
libpng/projects/vstudio/vstudio.sln
libpng/projects/vstudio/zlib.props
libpng/projects/vstudio/zlib/zlib.vcxproj
libpng/scripts/README.txt
libpng/scripts/SCOPTIONS.ppc
libpng/scripts/checksym.awk
libpng/scripts/def.c
libpng/scripts/descrip.mms
libpng/scripts/dfn.awk
libpng/scripts/intprefix.c
libpng/scripts/libpng-config-body.in
libpng/scripts/libpng-config-head.in
libpng/scripts/libpng.pc.in
libpng/scripts/libtool.m4
libpng/scripts/ltoptions.m4
libpng/scripts/ltsugar.m4
libpng/scripts/ltversion.m4
libpng/scripts/lt~obsolete.m4
libpng/scripts/macro.lst
libpng/scripts/makefile.32sunu
libpng/scripts/makefile.64sunu
libpng/scripts/makefile.acorn
libpng/scripts/makefile.aix
libpng/scripts/makefile.amiga
libpng/scripts/makefile.atari
libpng/scripts/makefile.bc32
libpng/scripts/makefile.beos
libpng/scripts/makefile.bor
libpng/scripts/makefile.cegcc
libpng/scripts/makefile.darwin
libpng/scripts/makefile.dec
libpng/scripts/makefile.dj2
libpng/scripts/makefile.freebsd
libpng/scripts/makefile.gcc
libpng/scripts/makefile.hp64
libpng/scripts/makefile.hpgcc
libpng/scripts/makefile.hpux
libpng/scripts/makefile.ibmc
libpng/scripts/makefile.intel
libpng/scripts/makefile.knr
libpng/scripts/makefile.linux
libpng/scripts/makefile.mips
libpng/scripts/makefile.msc
libpng/scripts/makefile.msys
libpng/scripts/makefile.ne12bsd
libpng/scripts/makefile.netbsd
libpng/scripts/makefile.openbsd
libpng/scripts/makefile.sco
libpng/scripts/makefile.sggcc
libpng/scripts/makefile.sgi
libpng/scripts/makefile.so9
libpng/scripts/makefile.solaris
libpng/scripts/makefile.solaris-x86
libpng/scripts/makefile.std
libpng/scripts/makefile.sunos
libpng/scripts/makefile.tc3
libpng/scripts/makefile.vcwin32
libpng/scripts/makevms.com
libpng/scripts/options.awk
libpng/scripts/pnglibconf.dfa
libpng/scripts/pnglibconf.h.prebuilt
libpng/scripts/pnglibconf.mak
libpng/scripts/pngwin.rc
libpng/scripts/prefix.c
libpng/scripts/smakefile.ppc
libpng/scripts/sym.c
libpng/scripts/symbols.c
libpng/scripts/symbols.def
libpng/scripts/vers.c
libpng/test-driver
libpng/tests/pngimage-full
libpng/tests/pngimage-quick
libpng/tests/pngstest
libpng/tests/pngstest-0g01
libpng/tests/pngstest-0g02
libpng/tests/pngstest-0g04
libpng/tests/pngstest-0g08
libpng/tests/pngstest-0g16
libpng/tests/pngstest-2c08
libpng/tests/pngstest-2c16
libpng/tests/pngstest-3p01
libpng/tests/pngstest-3p02
libpng/tests/pngstest-3p04
libpng/tests/pngstest-3p08
libpng/tests/pngstest-4a08
libpng/tests/pngstest-4a16
libpng/tests/pngstest-6a08
libpng/tests/pngstest-6a16
libpng/tests/pngstest-error
libpng/tests/pngtest
libpng/tests/pngunknown-IDAT
libpng/tests/pngunknown-discard
libpng/tests/pngunknown-if-safe
libpng/tests/pngunknown-sAPI
libpng/tests/pngunknown-sTER
libpng/tests/pngunknown-save
libpng/tests/pngunknown-vpAg
libpng/tests/pngvalid-gamma-16-to-8
libpng/tests/pngvalid-gamma-alpha-mode
libpng/tests/pngvalid-gamma-background
libpng/tests/pngvalid-gamma-expand16-alpha-mode
libpng/tests/pngvalid-gamma-expand16-background
libpng/tests/pngvalid-gamma-expand16-transform
libpng/tests/pngvalid-gamma-sbit
libpng/tests/pngvalid-gamma-threshold
libpng/tests/pngvalid-gamma-transform
libpng/tests/pngvalid-progressive-interlace-size
libpng/tests/pngvalid-progressive-interlace-standard
libpng/tests/pngvalid-progressive-interlace-transform
libpng/tests/pngvalid-progressive-standard
libpng/tests/pngvalid-standard
main/pcl6_gcc.mak
main/pcl6_msvc.mak
man/de/dvipdf.1
man/de/font2c.1
man/de/gsnd.1
man/de/pdf2dsc.1
man/de/pdf2ps.1
man/de/printafm.1
man/de/ps2ascii.1
man/de/ps2pdf.1
man/de/ps2ps.1
man/de/wftopfa.1
man/dvipdf.1
man/eps2eps.1
man/font2c.1
man/gs.1
man/gslp.1
man/gsnd.1
man/pdf2dsc.1
man/pdf2ps.1
man/pf2afm.1
man/pfbtopfa.1
man/printafm.1
man/ps2ascii.1
man/ps2epsi.1
man/ps2pdf.1
man/ps2pdfwr.1
man/ps2ps.1
man/wftopfa.1
old-stuff/COPYING
old-stuff/Makefile
old-stuff/autogen.sh
old-stuff/common/cp.bat
old-stuff/common/gccdefs.mak
old-stuff/common/generic.mak
old-stuff/common/msvc_top.mak
old-stuff/common/msvcdefs.mak
old-stuff/common/mv.bat
old-stuff/common/pcdefs.mak
old-stuff/common/rm.bat
old-stuff/common/sgidefs.mak
old-stuff/common/ugcc_top.mak
old-stuff/common/unixdefs.mak
old-stuff/config.mak.in
old-stuff/configure.ac
old-stuff/main/pcl6_gcc.mak
old-stuff/main/pcl6_msvc.mak
old-stuff/win32/GhostPDL.sln
old-stuff/win32/ReadMe.txt
old-stuff/win32/language_switch.vcproj
old-stuff/win32/pcl.vcproj
old-stuff/win32/xps.vcproj
old-stuff/winrt/GhostPDL.sln
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/project.pbxproj
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/project.xcworkspace/contents.xcworkspacedata
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/GhostPDL.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/ghostscript.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/language_switch.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/pcl.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/svg.xcscheme
old-stuff/xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/xps.xcscheme
old-stuff/xcode/Makefile
old-stuff/xcode/clang_wrapper.c
old-stuff/xcode/clang_wrapper.sh
old-stuff/xcode/resolve.sh
openjpeg/AUTHORS
openjpeg/CHANGES
openjpeg/LICENSE
openjpeg/NEWS
openjpeg/THANKS
openjpeg/src/lib/openjp2/CMakeLists.txt
openjpeg/src/lib/openjp2/bio.c
openjpeg/src/lib/openjp2/bio.h
openjpeg/src/lib/openjp2/cidx_manager.c
openjpeg/src/lib/openjp2/cidx_manager.h
openjpeg/src/lib/openjp2/cio.c
openjpeg/src/lib/openjp2/cio.h
openjpeg/src/lib/openjp2/dwt.c
openjpeg/src/lib/openjp2/dwt.h
openjpeg/src/lib/openjp2/event.c
openjpeg/src/lib/openjp2/event.h
openjpeg/src/lib/openjp2/function_list.c
openjpeg/src/lib/openjp2/function_list.h
openjpeg/src/lib/openjp2/image.c
openjpeg/src/lib/openjp2/image.h
openjpeg/src/lib/openjp2/indexbox_manager.h
openjpeg/src/lib/openjp2/invert.c
openjpeg/src/lib/openjp2/invert.h
openjpeg/src/lib/openjp2/j2k.c
openjpeg/src/lib/openjp2/j2k.h
openjpeg/src/lib/openjp2/jp2.c
openjpeg/src/lib/openjp2/jp2.h
openjpeg/src/lib/openjp2/libopenjp2.pc.cmake.in
openjpeg/src/lib/openjp2/mct.c
openjpeg/src/lib/openjp2/mct.h
openjpeg/src/lib/openjp2/mqc.c
openjpeg/src/lib/openjp2/mqc.h
openjpeg/src/lib/openjp2/openjpeg.c
openjpeg/src/lib/openjp2/openjpeg.h
openjpeg/src/lib/openjp2/opj_clock.c
openjpeg/src/lib/openjp2/opj_clock.h
openjpeg/src/lib/openjp2/opj_codec.h
openjpeg/src/lib/openjp2/opj_config.h
openjpeg/src/lib/openjp2/opj_config.h.cmake.in
openjpeg/src/lib/openjp2/opj_config_private.h
openjpeg/src/lib/openjp2/opj_config_private.h.cmake.in
openjpeg/src/lib/openjp2/opj_includes.h
openjpeg/src/lib/openjp2/opj_intmath.h
openjpeg/src/lib/openjp2/opj_inttypes.h
openjpeg/src/lib/openjp2/opj_malloc.h
openjpeg/src/lib/openjp2/opj_stdint.h
openjpeg/src/lib/openjp2/phix_manager.c
openjpeg/src/lib/openjp2/pi.c
openjpeg/src/lib/openjp2/pi.h
openjpeg/src/lib/openjp2/ppix_manager.c
openjpeg/src/lib/openjp2/raw.c
openjpeg/src/lib/openjp2/raw.h
openjpeg/src/lib/openjp2/t1.c
openjpeg/src/lib/openjp2/t1.h
openjpeg/src/lib/openjp2/t1_generate_luts.c
openjpeg/src/lib/openjp2/t1_luts.h
openjpeg/src/lib/openjp2/t2.c
openjpeg/src/lib/openjp2/t2.h
openjpeg/src/lib/openjp2/tcd.c
openjpeg/src/lib/openjp2/tcd.h
openjpeg/src/lib/openjp2/tgt.c
openjpeg/src/lib/openjp2/tgt.h
openjpeg/src/lib/openjp2/thix_manager.c
openjpeg/src/lib/openjp2/tpix_manager.c
pcl/Anomalies.txt
pcl/COPYING.AFPL
pcl/LICENSE
pcl/NEWS
pcl/PCL5C_Color_Laserjet_4700_Differences.xls
pcl/README.txt
pcl/pcbiptrn.c
pcl/pcbiptrn.h
pcl/pccid.c
pcl/pccid.h
pcl/pccolor.c
pcl/pccoord.h
pcl/pccprint.c
pcl/pccsbase.c
pcl/pccsbase.h
pcl/pcdict.h
pcl/pcdither.c
pcl/pcdither.h
pcl/pcdraw.c
pcl/pcdraw.h
pcl/pcfont.c
pcl/pcfont.h
pcl/pcfontpg.c
pcl/pcfontst.h
pcl/pcfrgrnd.c
pcl/pcfrgrnd.h
pcl/pcfsel.c
pcl/pcfsel.h
pcl/pcht.c
pcl/pcht.h
pcl/pcident.c
pcl/pcident.h
pcl/pcimpl.c
pcl/pcindxed.c
pcl/pcindxed.h
pcl/pcjob.c
pcl/pcl.mak
pcl/pcl/Anomalies.txt
pcl/pcl/PCL5C_Color_Laserjet_4700_Differences.xls
pcl/pcl/pcbiptrn.c
pcl/pcl/pcbiptrn.h
pcl/pcl/pccid.c
pcl/pcl/pccid.h
pcl/pcl/pccolor.c
pcl/pcl/pccoord.h
pcl/pcl/pccprint.c
pcl/pcl/pccsbase.c
pcl/pcl/pccsbase.h
pcl/pcl/pcdict.h
pcl/pcl/pcdither.c
pcl/pcl/pcdither.h
pcl/pcl/pcdraw.c
pcl/pcl/pcdraw.h
pcl/pcl/pcfont.c
pcl/pcl/pcfont.h
pcl/pcl/pcfontpg.c
pcl/pcl/pcfontst.h
pcl/pcl/pcfrgrnd.c
pcl/pcl/pcfrgrnd.h
pcl/pcl/pcfsel.c
pcl/pcl/pcfsel.h
pcl/pcl/pcht.c
pcl/pcl/pcht.h
pcl/pcl/pcident.c
pcl/pcl/pcident.h
pcl/pcl/pcimpl.c
pcl/pcl/pcindxed.c
pcl/pcl/pcindxed.h
pcl/pcl/pcjob.c
pcl/pcl/pcl.mak
pcl/pcl/pcl_top.mak
pcl/pcl/pclookup.c
pcl/pcl/pclookup.h
pcl/pcl/pcmacros.c
pcl/pcl/pcmisc.c
pcl/pcl/pcmtx3.c
pcl/pcl/pcmtx3.h
pcl/pcl/pcommand.c
pcl/pcl/pcommand.h
pcl/pcl/pcpage.c
pcl/pcl/pcpage.h
pcl/pcl/pcpalet.c
pcl/pcl/pcpalet.h
pcl/pcl/pcparam.h
pcl/pcl/pcparse.c
pcl/pcl/pcparse.h
pcl/pcl/pcpatrn.c
pcl/pcl/pcpatrn.h
pcl/pcl/pcpattyp.h
pcl/pcl/pcpatxfm.c
pcl/pcl/pcpatxfm.h
pcl/pcl/pcrect.c
pcl/pcl/pcsfont.c
pcl/pcl/pcstate.h
pcl/pcl/pcstatus.c
pcl/pcl/pcsymbol.c
pcl/pcl/pcsymbol.h
pcl/pcl/pctext.c
pcl/pcl/pctop.c
pcl/pcl/pctop.h
pcl/pcl/pctpm.h
pcl/pcl/pcuptrn.c
pcl/pcl/pcuptrn.h
pcl/pcl/pcursor.c
pcl/pcl/pcursor.h
pcl/pcl/pcwhtidx.c
pcl/pcl/pcwhtidx.h
pcl/pcl/pcxfmst.h
pcl/pcl/pgchar.c
pcl/pcl/pgcolor.c
pcl/pcl/pgconfig.c
pcl/pcl/pgdraw.c
pcl/pcl/pgdraw.h
pcl/pcl/pgfdata.c
pcl/pcl/pgfdata.h
pcl/pcl/pgfont.c
pcl/pcl/pgfont.h
pcl/pcl/pgframe.c
pcl/pcl/pggeom.c
pcl/pcl/pggeom.h
pcl/pcl/pginit.c
pcl/pcl/pginit.h
pcl/pcl/pglabel.c
pcl/pcl/pglfill.c
pcl/pcl/pgmand.h
pcl/pcl/pgmisc.c
pcl/pcl/pgmisc.h
pcl/pcl/pgparse.c
pcl/pcl/pgpoly.c
pcl/pcl/pgstate.h
pcl/pcl/pgvector.c
pcl/pcl/rtgmode.c
pcl/pcl/rtgmode.h
pcl/pcl/rtmisc.c
pcl/pcl/rtmisc.h
pcl/pcl/rtraster.c
pcl/pcl/rtraster.h
pcl/pcl/rtrstcmp.c
pcl/pcl/rtrstcmp.h
pcl/pcl/rtrstst.h
pcl/pcl_top.mak
pcl/pclookup.c
pcl/pclookup.h
pcl/pcmacros.c
pcl/pcmisc.c
pcl/pcmtx3.c
pcl/pcmtx3.h
pcl/pcommand.c
pcl/pcommand.h
pcl/pcpage.c
pcl/pcpage.h
pcl/pcpalet.c
pcl/pcpalet.h
pcl/pcparam.h
pcl/pcparse.c
pcl/pcparse.h
pcl/pcpatrn.c
pcl/pcpatrn.h
pcl/pcpattyp.h
pcl/pcpatxfm.c
pcl/pcpatxfm.h
pcl/pcrect.c
pcl/pcsfont.c
pcl/pcstate.h
pcl/pcstatus.c
pcl/pcsymbol.c
pcl/pcsymbol.h
pcl/pctext.c
pcl/pctop.c
pcl/pctop.h
pcl/pctpm.h
pcl/pcuptrn.c
pcl/pcuptrn.h
pcl/pcursor.c
pcl/pcursor.h
pcl/pcwhtidx.c
pcl/pcwhtidx.h
pcl/pcxfmst.h
pcl/pgchar.c
pcl/pgcolor.c
pcl/pgconfig.c
pcl/pgdraw.c
pcl/pgdraw.h
pcl/pgfdata.c
pcl/pgfdata.h
pcl/pgfont.c
pcl/pgfont.h
pcl/pgframe.c
pcl/pggeom.c
pcl/pggeom.h
pcl/pginit.c
pcl/pginit.h
pcl/pglabel.c
pcl/pglfill.c
pcl/pgmand.h
pcl/pgmisc.c
pcl/pgmisc.h
pcl/pgparse.c
pcl/pgpoly.c
pcl/pgstate.h
pcl/pgvector.c
pcl/pl/pjparse.c
pcl/pl/pjparse.h
pcl/pl/pjparsei.c
pcl/pl/pjtop.c
pcl/pl/pjtop.h
pcl/pl/pl.mak
pcl/pl/plalloc.c
pcl/pl/plalloc.h
pcl/pl/plapi.h
pcl/pl/plchar.c
pcl/pl/plchar.h
pcl/pl/pldebug.h
pcl/pl/pldict.c
pcl/pl/pldict.h
pcl/pl/pldraw.c
pcl/pl/pldraw.h
pcl/pl/plfapi.c
pcl/pl/plfapi.h
pcl/pl/plfont.c
pcl/pl/plfont.h
pcl/pl/plftable.c
pcl/pl/plftable.h
pcl/pl/plht.c
pcl/pl/plht.h
pcl/pl/plimpl.c
pcl/pl/pllfont.c
pcl/pl/pllfont.h
pcl/pl/plmain.c
pcl/pl/plmain.h
pcl/pl/plparse.h
pcl/pl/plplatf.c
pcl/pl/plplatf.h
pcl/pl/plplatfps.c
pcl/pl/plromfs.mak
pcl/pl/plsymbol.c
pcl/pl/plsymbol.h
pcl/pl/pltop.c
pcl/pl/pltop.h
pcl/pl/pltoputl.c
pcl/pl/pltoputl.h
pcl/pl/pluchar.c
pcl/pl/plufont.c
pcl/pl/plufstlp.c
pcl/pl/plufstlp.h
pcl/pl/plufstlp1.c
pcl/pl/plulfont.c
pcl/pl/plvalue.c
pcl/pl/plvalue.h
pcl/pl/plvocab.c
pcl/pl/plvocab.h
pcl/pl/plwimg.c
pcl/pl/plwimg.h
pcl/pl/plwmainc.c
pcl/pl/plwreg.c
pcl/pl/plwreg.h
pcl/pl/plwres.h
pcl/pl/realmain.c
pcl/pxl/PXL_Color_Laserjet_4700_Differences.xls
pcl/pxl/pxasm.bat
pcl/pxl/pxasm.ps
pcl/pxl/pxattr.h
pcl/pxl/pxbfont.c
pcl/pxl/pxbfont.h
pcl/pxl/pxbfont.ps
pcl/pxl/pxcet.txt
pcl/pxl/pxdict.h
pcl/pxl/pxdiff.txt
pcl/pxl/pxenum.h
pcl/pxl/pxerrors.c
pcl/pxl/pxerrors.h
pcl/pxl/pxffont.c
pcl/pxl/pxfont.c
pcl/pxl/pxfont.h
pcl/pxl/pxfts.txt
pcl/pxl/pxgstate.c
pcl/pxl/pxgstate.h
pcl/pxl/pximage.c
pcl/pxl/pximpl.c
pcl/pxl/pxink.c
pcl/pxl/pxl.mak
pcl/pxl/pxlib.txt
pcl/pxl/pxoper.h
pcl/pxl/pxpaint.c
pcl/pxl/pxparse.c
pcl/pxl/pxparse.h
pcl/pxl/pxptable.c
pcl/pxl/pxptable.h
pcl/pxl/pxpthr.c
pcl/pxl/pxpthr.h
pcl/pxl/pxsessio.c
pcl/pxl/pxspec.txt
pcl/pxl/pxstate.c
pcl/pxl/pxstate.h
pcl/pxl/pxstream.c
pcl/pxl/pxsymbol.ps
pcl/pxl/pxsymbol.psc
pcl/pxl/pxsymbol.psh
pcl/pxl/pxtag.h
pcl/pxl/pxtop.c
pcl/pxl/pxvalue.c
pcl/pxl/pxvalue.h
pcl/pxl/pxvendor.c
pcl/pxl/pxvendor.h
pcl/rtgmode.c
pcl/rtgmode.h
pcl/rtmisc.c
pcl/rtmisc.h
pcl/rtraster.c
pcl/rtraster.h
pcl/rtrstcmp.c
pcl/rtrstcmp.h
pcl/rtrstst.h
pcl/tools/Acrobat2Tiff/Acrobat2Tiff.sln
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vb
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vbproj
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.Designer.vb
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.myapp
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/AssemblyInfo.vb
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.Designer.vb
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.resx
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.Designer.vb
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.settings
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.exe
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.vshost.exe
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.xml
pcl/tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Interop.Acrobat.dll
pcl/tools/GOT/README
pcl/tools/GOT/detag.c
pcl/tools/GOT/dotags.sh
pcl/tools/GOT/tagimage.c
pcl/tools/bitfont.pcl
pcl/tools/bitfonts.pxl
pcl/tools/cat_url.py
pcl/tools/check_deps.py
pcl/tools/cmpi/Makefile
pcl/tools/cmpi/Makefile.in
pcl/tools/cmpi/README
pcl/tools/cmpi/cmpi.bkl
pcl/tools/cmpi/cmpi.cpp
pcl/tools/cmpi/cmpi.dsp
pcl/tools/cmpi/cmpi.dsw
pcl/tools/cmpi/cmpi.pro
pcl/tools/cmpi/cmpi.rc
pcl/tools/cmpi/cmpi.sln
pcl/tools/cmpi/cmpi.suo
pcl/tools/cmpi/cmpi.vcp
pcl/tools/cmpi/cmpi.vcproj
pcl/tools/cmpi/cmpi.vcw
pcl/tools/cmpi/descrip.mms
pcl/tools/cmpi/makefile.bcc
pcl/tools/cmpi/makefile.dmc
pcl/tools/cmpi/makefile.dms
pcl/tools/cmpi/makefile.dos
pcl/tools/cmpi/makefile.gcc
pcl/tools/cmpi/makefile.sc
pcl/tools/cmpi/makefile.unx
pcl/tools/cmpi/makefile.va
pcl/tools/cmpi/makefile.vc
pcl/tools/cmpi/makefile.wat
pcl/tools/docov.pl
pcl/tools/fills.pcl
pcl/tools/fontpage.pcl
pcl/tools/fonts.pcl
pcl/tools/fonts.pxl
pcl/tools/frs96.pxl
pcl/tools/gl-chars.pcl
pcl/tools/gl2_chars.pl
pcl/tools/grashopp.pcl
pcl/tools/grid.pcl
pcl/tools/label.tst
pcl/tools/lineprinter.pcl
pcl/tools/make_snapshot.sh
pcl/tools/makeromttf.py
pcl/tools/null.pxl
pcl/tools/opaque.pcl
pcl/tools/origins.pcl
pcl/tools/owl.pcl
pcl/tools/owl2.pcl
pcl/tools/pattern.pcl
pcl/tools/pattern.pxl
pcl/tools/pcl2pdf
pcl/tools/pcl2pdf.bat
pcl/tools/pcl2pdfwr
pcl/tools/pcl2pdfwr.bat
pcl/tools/plot2pdf.sh
pcl/tools/pxlasm.py
pcl/tools/pxldis.py
pcl/tools/regress.sh
pcl/tools/revlist.py
pcl/tools/smoke_baseline.txt
pcl/tools/smoke_check.sh
pcl/tools/smoke_update.sh
pcl/tools/suite.tcl
pcl/tools/tiger.px3
pcl/tools/tiger.svg
pcl/tools/tt2pcl.c
pcl/tools/vasarely.px3
pcl/urwfonts/A028-Ext.ttf
pcl/urwfonts/A028-Med.ttf
pcl/urwfonts/A030-Bol.ttf
pcl/urwfonts/A030-BolIta.ttf
pcl/urwfonts/A030-Ita.ttf
pcl/urwfonts/A030-Reg.ttf
pcl/urwfonts/AntiqueOlive-Bol.ttf
pcl/urwfonts/AntiqueOlive-Ita.ttf
pcl/urwfonts/AntiqueOlive-Reg.ttf
pcl/urwfonts/ArtLinePrinter.ttf
pcl/urwfonts/CenturySchL-Bold.ttf
pcl/urwfonts/CenturySchL-BoldItal.ttf
pcl/urwfonts/CenturySchL-Ital.ttf
pcl/urwfonts/CenturySchL-Roma.ttf
pcl/urwfonts/ClarendonURW-BolCon.ttf
pcl/urwfonts/Coronet.ttf
pcl/urwfonts/Dingbats.ttf
pcl/urwfonts/GaramondNo8-Ita.ttf
pcl/urwfonts/GaramondNo8-Med.ttf
pcl/urwfonts/GaramondNo8-MedIta.ttf
pcl/urwfonts/GaramondNo8-Reg.ttf
pcl/urwfonts/LetterGothic-Bol.ttf
pcl/urwfonts/LetterGothic-Ita.ttf
pcl/urwfonts/LetterGothic-Reg.ttf
pcl/urwfonts/Mauritius-Reg.ttf
pcl/urwfonts/NewDingbats.ttf
pcl/urwfonts/NimbusMonL-Bold.ttf
pcl/urwfonts/NimbusMonL-BoldObli.ttf
pcl/urwfonts/NimbusMonL-Regu.ttf
pcl/urwfonts/NimbusMonL-ReguObli.ttf
pcl/urwfonts/NimbusMono-Bol.ttf
pcl/urwfonts/NimbusMono-BolIta.ttf
pcl/urwfonts/NimbusMono-Ita.ttf
pcl/urwfonts/NimbusMono-Reg.ttf
pcl/urwfonts/NimbusRomNo9L-Medi.ttf
pcl/urwfonts/NimbusRomNo9L-MediItal.ttf
pcl/urwfonts/NimbusRomNo9L-Regu.ttf
pcl/urwfonts/NimbusRomNo9L-ReguItal.ttf
pcl/urwfonts/NimbusRomanNo4-Bol.ttf
pcl/urwfonts/NimbusRomanNo4-BolIta.ttf
pcl/urwfonts/NimbusRomanNo4-Lig.ttf
pcl/urwfonts/NimbusRomanNo4-LigIta.ttf
pcl/urwfonts/NimbusRomanNo9-Ita.ttf
pcl/urwfonts/NimbusRomanNo9-Med.ttf
pcl/urwfonts/NimbusRomanNo9-MedIta.ttf
pcl/urwfonts/NimbusRomanNo9-Reg.ttf
pcl/urwfonts/NimbusSanL-Bold.ttf
pcl/urwfonts/NimbusSanL-BoldCond.ttf
pcl/urwfonts/NimbusSanL-BoldCondItal.ttf
pcl/urwfonts/NimbusSanL-BoldItal.ttf
pcl/urwfonts/NimbusSanL-Regu.ttf
pcl/urwfonts/NimbusSanL-ReguCond.ttf
pcl/urwfonts/NimbusSanL-ReguCondItal.ttf
pcl/urwfonts/NimbusSanL-ReguItal.ttf
pcl/urwfonts/StandardSymL.ttf
pcl/urwfonts/U001-Bol.ttf
pcl/urwfonts/U001-BolIta.ttf
pcl/urwfonts/U001-Ita.ttf
pcl/urwfonts/U001-Reg.ttf
pcl/urwfonts/U001Con-Bol.ttf
pcl/urwfonts/U001Con-BolIta.ttf
pcl/urwfonts/U001Con-Ita.ttf
pcl/urwfonts/U001Con-Reg.ttf
pcl/urwfonts/URWBookmanL-DemiBold.ttf
pcl/urwfonts/URWBookmanL-DemiBoldItal.ttf
pcl/urwfonts/URWBookmanL-Ligh.ttf
pcl/urwfonts/URWBookmanL-LighItal.ttf
pcl/urwfonts/URWChanceryL-MediItal.ttf
pcl/urwfonts/URWClassico-Bol.ttf
pcl/urwfonts/URWClassico-BolIta.ttf
pcl/urwfonts/URWClassico-Ita.ttf
pcl/urwfonts/URWClassico-Reg.ttf
pcl/urwfonts/URWGothicL-Book.ttf
pcl/urwfonts/URWGothicL-BookObli.ttf
pcl/urwfonts/URWGothicL-Demi.ttf
pcl/urwfonts/URWGothicL-DemiObli.ttf
pcl/urwfonts/URWPalladioL-Bold.ttf
pcl/urwfonts/URWPalladioL-BoldItal.ttf
pcl/urwfonts/URWPalladioL-Ital.ttf
pcl/urwfonts/URWPalladioL-Roma.ttf
pcl6/pcl6.xcodeproj/project.pbxproj
pl/dwimg.c
pl/dwimg.h
pl/dwmainc.c
pl/dwreg.c
pl/dwreg.h
pl/dwres.h
pl/pjparse.c
pl/pjparse.h
pl/pjparsei.c
pl/pjtop.c
pl/pjtop.h
pl/pl.mak
pl/plalloc.c
pl/plalloc.h
pl/plapi.h
pl/plchar.c
pl/plchar.h
pl/pldebug.h
pl/pldict.c
pl/pldict.h
pl/pldraw.c
pl/pldraw.h
pl/plfapi.c
pl/plfapi.h
pl/plfont.c
pl/plfont.h
pl/plftable.c
pl/plftable.h
pl/plht.c
pl/plht.h
pl/plimpl.c
pl/pllfont.c
pl/pllfont.h
pl/plmain.c
pl/plmain.h
pl/plparse.h
pl/plplatf.c
pl/plplatf.h
pl/plplatfps.c
pl/plsymbol.c
pl/plsymbol.h
pl/pltop.c
pl/pltop.h
pl/pltoputl.c
pl/pltoputl.h
pl/pluchar.c
pl/plufont.c
pl/plufstlp.c
pl/plufstlp.h
pl/plufstlp1.c
pl/plulfont.c
pl/plvalue.c
pl/plvalue.h
pl/plvocab.c
pl/plvocab.h
pl/realmain.c
psi/apitest.c
psi/bfont.h
psi/btoken.h
psi/dmmain.c
psi/dmmain.r
psi/dpmain.c
psi/dscparse.c
psi/dscparse.h
psi/dstack.h
psi/dw32c.def
psi/dw64c.def
psi/dwdll.c
psi/dwdll.h
psi/dwimg.c
psi/dwimg.h
psi/dwmain.c
psi/dwmain.rc
psi/dwmain32.def
psi/dwmain64.def
psi/dwmainc.c
psi/dwnodll.c
psi/dwreg.c
psi/dwreg.h
psi/dwres.h
psi/dwsetup.def
psi/dwsetup_x64.manifest
psi/dwsetup_x86.manifest
psi/dwtext.c
psi/dwtext.h
psi/dwtrace.c
psi/dwtrace.h
psi/dwuninst.def
psi/dwuninst_x64.manifest
psi/dwuninst_x86.manifest
psi/dxmain.c
psi/dxmainc.c
psi/estack.h
psi/files.h
psi/ghost.h
psi/gs.c
psi/gsdll.c
psi/gsdll2.def
psi/gsdll2.rc
psi/gsdll32.def
psi/gsdll32.rc
psi/gsdll32metro.def
psi/gsdll32w.lnk
psi/gsdll64.def
psi/gsdll64metro.def
psi/gsdllARM32metro.def
psi/gserver.c
psi/gsos2.def
psi/gsos2.icx
psi/gsos2.rc
psi/ialloc.c
psi/ialloc.h
psi/iapi.c
psi/iapi.h
psi/iastate.h
psi/iastruct.h
psi/ibnum.c
psi/ibnum.h
psi/ichar.h
psi/ichar1.h
psi/icharout.h
psi/icid.h
psi/icie.h
psi/icolor.h
psi/iconf.c
psi/iconf.h
psi/icontext.c
psi/icontext.h
psi/icremap.h
psi/icsmap.h
psi/icstate.h
psi/iddict.h
psi/iddstack.h
psi/idebug.c
psi/idebug.h
psi/idict.c
psi/idict.h
psi/idictdef.h
psi/idicttpl.h
psi/idisp.c
psi/idisp.h
psi/idosave.h
psi/idparam.c
psi/idparam.h
psi/idsdata.h
psi/idstack.c
psi/idstack.h
psi/ierrors.h
psi/iesdata.h
psi/iestack.h
psi/ifapi.h
psi/ifcid.h
psi/ifilter.h
psi/ifilter2.h
psi/ifont.h
psi/ifont1.h
psi/ifont2.h
psi/ifont42.h
psi/ifrpred.h
psi/ifunc.h
psi/ifwpred.h
psi/igc.c
psi/igc.h
psi/igcref.c
psi/igcstr.c
psi/igcstr.h
psi/igstate.h
psi/iht.h
psi/iimage.h
psi/iimage2.h
psi/iinit.c
psi/iinit.h
psi/ilevel.h
psi/ilocate.c
psi/imain.c
psi/imain.h
psi/imainarg.c
psi/imainarg.h
psi/imemory.h
psi/iminst.h
psi/iname.c
psi/iname.h
psi/inamedef.h
psi/inameidx.h
psi/inames.h
psi/inamestr.h
psi/inobtokn.c
psi/inouparm.c
psi/int.mak
psi/interp.c
psi/interp.h
psi/iosdata.h
psi/iostack.h
psi/ipacked.h
psi/iparam.c
psi/iparam.h
psi/iparray.h
psi/ipcolor.h
psi/iplugin.c
psi/iplugin.h
psi/ireclaim.c
psi/iref.h
psi/isave.c
psi/isave.h
psi/iscan.c
psi/iscan.h
psi/iscanbin.c
psi/iscanbin.h
psi/iscannum.c
psi/iscannum.h
psi/isdata.h
psi/isstate.h
psi/istack.c
psi/istack.h
psi/istkparm.h
psi/istream.h
psi/istruct.h
psi/itoken.h
psi/iutil.c
psi/iutil.h
psi/iutil2.c
psi/iutil2.h
psi/ivmem2.h
psi/ivmspace.h
psi/main.h
psi/mkfilelt.cpp
psi/msvc.mak
psi/msvc32.mak
psi/msvc64.mak
psi/nsisinst.nsi
psi/oparc.h
psi/opcheck.h
psi/opdef.h
psi/oper.h
psi/opextern.h
psi/os2.mak
psi/ostack.h
psi/psi.mak
psi/psitop.c
psi/psromfs.mak
psi/sfilter1.c
psi/store.h
psi/winint.mak
psi/zalg.c
psi/zarith.c
psi/zarray.c
psi/zbfont.c
psi/zbseq.c
psi/zcfont.c
psi/zchar.c
psi/zchar1.c
psi/zchar2.c
psi/zchar32.c
psi/zchar42.c
psi/zchar42.h
psi/zcharout.c
psi/zcharx.c
psi/zcid.c
psi/zcidtest.c
psi/zcie.c
psi/zcie.h
psi/zcolor.c
psi/zcolor.h
psi/zcolor1.c
psi/zcolor2.c
psi/zcolor3.c
psi/zcontext.c
psi/zcontrol.c
psi/zcrd.c
psi/zcsdevn.c
psi/zcsindex.c
psi/zcspixel.c
psi/zcssepr.c
psi/zdevcal.c
psi/zdevice.c
psi/zdevice2.c
psi/zdfilter.c
psi/zdict.c
psi/zdosio.c
psi/zdouble.c
psi/zdpnext.c
psi/zdps.c
psi/zdps1.c
psi/zdscpars.c
psi/zfaes.c
psi/zfapi.c
psi/zfarc4.c
psi/zfbcp.c
psi/zfcid.c
psi/zfcid0.c
psi/zfcid1.c
psi/zfcmap.c
psi/zfdctd.c
psi/zfdcte.c
psi/zfdecode.c
psi/zfile.c
psi/zfile.h
psi/zfile1.c
psi/zfileio.c
psi/zfilter.c
psi/zfilter2.c
psi/zfilterx.c
psi/zfimscale.c
psi/zfjbig2.c
psi/zfjpx.c
psi/zfmd5.c
psi/zfont.c
psi/zfont0.c
psi/zfont1.c
psi/zfont2.c
psi/zfont32.c
psi/zfont42.c
psi/zfontenum.c
psi/zform.c
psi/zfproc.c
psi/zfrsd.c
psi/zfrsd.h
psi/zfsample.c
psi/zfsha2.c
psi/zfunc.c
psi/zfunc.h
psi/zfunc0.c
psi/zfunc3.c
psi/zfunc4.c
psi/zfzlib.c
psi/zgeneric.c
psi/zgstate.c
psi/zhsb.c
psi/zht.c
psi/zht1.c
psi/zht2.c
psi/zht2.h
psi/zicc.c
psi/zicc.h
psi/zimage.c
psi/zimage2.c
psi/zimage3.c
psi/ziodev.c
psi/ziodev2.c
psi/ziodevs.c
psi/ziodevsc.c
psi/zmath.c
psi/zmatrix.c
psi/zmedia2.c
psi/zmisc.c
psi/zmisc1.c
psi/zmisc2.c
psi/zmisc3.c
psi/zncdummy.c
psi/zpacked.c
psi/zpaint.c
psi/zpath.c
psi/zpath1.c
psi/zpcolor.c
psi/zpdf_r6.c
psi/zpdfops.c
psi/zrelbit.c
psi/zrop.c
psi/zshade.c
psi/zstack.c
psi/zstring.c
psi/zsysvm.c
psi/ztoken.c
psi/ztrans.c
psi/ztrap.c
psi/ztype.c
psi/zupath.c
psi/zusparam.c
psi/zutf8.c
psi/zvmem.c
psi/zvmem2.c
psi/zwinutf8.c
pxl/PXL_Color_Laserjet_4700_Differences.xls
pxl/pxasm.bat
pxl/pxasm.ps
pxl/pxattr.h
pxl/pxbfont.c
pxl/pxbfont.h
pxl/pxbfont.ps
pxl/pxcet.txt
pxl/pxdict.h
pxl/pxdiff.txt
pxl/pxenum.h
pxl/pxerrors.c
pxl/pxerrors.h
pxl/pxffont.c
pxl/pxfont.c
pxl/pxfont.h
pxl/pxfts.txt
pxl/pxgstate.c
pxl/pxgstate.h
pxl/pximage.c
pxl/pximpl.c
pxl/pxink.c
pxl/pxl.mak
pxl/pxlib.txt
pxl/pxoper.h
pxl/pxpaint.c
pxl/pxparse.c
pxl/pxparse.h
pxl/pxptable.c
pxl/pxptable.h
pxl/pxpthr.c
pxl/pxpthr.h
pxl/pxsessio.c
pxl/pxspec.txt
pxl/pxstate.c
pxl/pxstate.h
pxl/pxstream.c
pxl/pxsymbol.ps
pxl/pxsymbol.psc
pxl/pxsymbol.psh
pxl/pxtag.h
pxl/pxtop.c
pxl/pxvalue.c
pxl/pxvalue.h
pxl/pxvendor.c
pxl/pxvendor.h
tiff/COPYRIGHT
tiff/ChangeLog
tiff/HOWTO-RELEASE
tiff/Makefile.am
tiff/Makefile.in
tiff/Makefile.vc
tiff/README
tiff/README.vms
tiff/RELEASE-DATE
tiff/SConstruct
tiff/TODO
tiff/VERSION
tiff/aclocal.m4
tiff/autogen.sh
tiff/build/Makefile.am
tiff/build/Makefile.in
tiff/build/README
tiff/config/compile
tiff/config/config.guess
tiff/config/config.sub
tiff/config/depcomp
tiff/config/install-sh
tiff/config/ltmain.sh
tiff/config/missing
tiff/config/mkinstalldirs
tiff/configure
tiff/configure.ac
tiff/configure.com
tiff/contrib/Makefile.am
tiff/contrib/Makefile.in
tiff/contrib/README
tiff/contrib/addtiffo/Makefile.am
tiff/contrib/addtiffo/Makefile.in
tiff/contrib/addtiffo/Makefile.vc
tiff/contrib/addtiffo/README
tiff/contrib/addtiffo/addtiffo.c
tiff/contrib/addtiffo/tif_overview.c
tiff/contrib/addtiffo/tif_ovrcache.c
tiff/contrib/addtiffo/tif_ovrcache.h
tiff/contrib/dbs/Makefile.am
tiff/contrib/dbs/Makefile.in
tiff/contrib/dbs/README
tiff/contrib/dbs/tiff-bi.c
tiff/contrib/dbs/tiff-grayscale.c
tiff/contrib/dbs/tiff-palette.c
tiff/contrib/dbs/tiff-rgb.c
tiff/contrib/dbs/xtiff/Makefile.am
tiff/contrib/dbs/xtiff/Makefile.in
tiff/contrib/dbs/xtiff/README
tiff/contrib/dbs/xtiff/patchlevel.h
tiff/contrib/dbs/xtiff/xtiff.c
tiff/contrib/dbs/xtiff/xtifficon.h
tiff/contrib/iptcutil/Makefile.am
tiff/contrib/iptcutil/Makefile.in
tiff/contrib/iptcutil/README
tiff/contrib/iptcutil/iptcutil.c
tiff/contrib/iptcutil/test.iptc
tiff/contrib/iptcutil/test.txt
tiff/contrib/mfs/Makefile.am
tiff/contrib/mfs/Makefile.in
tiff/contrib/mfs/README
tiff/contrib/mfs/mfs_file.c
tiff/contrib/pds/Makefile.am
tiff/contrib/pds/Makefile.in
tiff/contrib/pds/README
tiff/contrib/pds/tif_imageiter.c
tiff/contrib/pds/tif_imageiter.h
tiff/contrib/pds/tif_pdsdirread.c
tiff/contrib/pds/tif_pdsdirwrite.c
tiff/contrib/ras/Makefile.am
tiff/contrib/ras/Makefile.in
tiff/contrib/ras/README
tiff/contrib/ras/ras2tif.c
tiff/contrib/ras/tif2ras.c
tiff/contrib/stream/Makefile.am
tiff/contrib/stream/Makefile.in
tiff/contrib/stream/README
tiff/contrib/stream/tiffstream.cpp
tiff/contrib/stream/tiffstream.h
tiff/contrib/tags/Makefile.am
tiff/contrib/tags/Makefile.in
tiff/contrib/tags/README
tiff/contrib/tags/listtif.c
tiff/contrib/tags/maketif.c
tiff/contrib/tags/xtif_dir.c
tiff/contrib/tags/xtiffio.h
tiff/contrib/tags/xtiffiop.h
tiff/contrib/win_dib/Makefile.am
tiff/contrib/win_dib/Makefile.in
tiff/contrib/win_dib/Makefile.w95
tiff/contrib/win_dib/README.Tiffile
tiff/contrib/win_dib/README.tiff2dib
tiff/contrib/win_dib/Tiffile.cpp
tiff/contrib/win_dib/tiff2dib.c
tiff/html/Makefile.am
tiff/html/Makefile.in
tiff/html/TIFFTechNote2.html
tiff/html/addingtags.html
tiff/html/bugs.html
tiff/html/build.html
tiff/html/contrib.html
tiff/html/document.html
tiff/html/images.html
tiff/html/images/Makefile.am
tiff/html/images/Makefile.in
tiff/html/images/back.gif
tiff/html/images/bali.jpg
tiff/html/images/cat.gif
tiff/html/images/cover.jpg
tiff/html/images/cramps.gif
tiff/html/images/dave.gif
tiff/html/images/info.gif
tiff/html/images/jello.jpg
tiff/html/images/jim.gif
tiff/html/images/note.gif
tiff/html/images/oxford.gif
tiff/html/images/quad.jpg
tiff/html/images/ring.gif
tiff/html/images/smallliz.jpg
tiff/html/images/strike.gif
tiff/html/images/warning.gif
tiff/html/index.html
tiff/html/internals.html
tiff/html/intro.html
tiff/html/libtiff.html
tiff/html/man/Makefile.am
tiff/html/man/Makefile.in
tiff/html/man/TIFFClose.3tiff.html
tiff/html/man/TIFFDataWidth.3tiff.html
tiff/html/man/TIFFError.3tiff.html
tiff/html/man/TIFFFlush.3tiff.html
tiff/html/man/TIFFGetField.3tiff.html
tiff/html/man/TIFFOpen.3tiff.html
tiff/html/man/TIFFPrintDirectory.3tiff.html
tiff/html/man/TIFFRGBAImage.3tiff.html
tiff/html/man/TIFFReadDirectory.3tiff.html
tiff/html/man/TIFFReadEncodedStrip.3tiff.html
tiff/html/man/TIFFReadEncodedTile.3tiff.html
tiff/html/man/TIFFReadRGBAImage.3tiff.html
tiff/html/man/TIFFReadRGBAStrip.3tiff.html
tiff/html/man/TIFFReadRGBATile.3tiff.html
tiff/html/man/TIFFReadRawStrip.3tiff.html
tiff/html/man/TIFFReadRawTile.3tiff.html
tiff/html/man/TIFFReadScanline.3tiff.html
tiff/html/man/TIFFReadTile.3tiff.html
tiff/html/man/TIFFSetDirectory.3tiff.html
tiff/html/man/TIFFSetField.3tiff.html
tiff/html/man/TIFFWarning.3tiff.html
tiff/html/man/TIFFWriteDirectory.3tiff.html
tiff/html/man/TIFFWriteEncodedStrip.3tiff.html
tiff/html/man/TIFFWriteEncodedTile.3tiff.html
tiff/html/man/TIFFWriteRawStrip.3tiff.html
tiff/html/man/TIFFWriteRawTile.3tiff.html
tiff/html/man/TIFFWriteScanline.3tiff.html
tiff/html/man/TIFFWriteTile.3tiff.html
tiff/html/man/TIFFbuffer.3tiff.html
tiff/html/man/TIFFcodec.3tiff.html
tiff/html/man/TIFFcolor.3tiff.html
tiff/html/man/TIFFmemory.3tiff.html
tiff/html/man/TIFFquery.3tiff.html
tiff/html/man/TIFFsize.3tiff.html
tiff/html/man/TIFFstrip.3tiff.html
tiff/html/man/TIFFswab.3tiff.html
tiff/html/man/TIFFtile.3tiff.html
tiff/html/man/fax2ps.1.html
tiff/html/man/fax2tiff.1.html
tiff/html/man/gif2tiff.1.html
tiff/html/man/index.html
tiff/html/man/libtiff.3tiff.html
tiff/html/man/pal2rgb.1.html
tiff/html/man/ppm2tiff.1.html
tiff/html/man/ras2tiff.1.html
tiff/html/man/raw2tiff.1.html
tiff/html/man/rgb2ycbcr.1.html
tiff/html/man/sgi2tiff.1.html
tiff/html/man/thumbnail.1.html
tiff/html/man/tiff2bw.1.html
tiff/html/man/tiff2pdf.1.html
tiff/html/man/tiff2ps.1.html
tiff/html/man/tiff2rgba.1.html
tiff/html/man/tiffcmp.1.html
tiff/html/man/tiffcp.1.html
tiff/html/man/tiffcrop.1.html
tiff/html/man/tiffdither.1.html
tiff/html/man/tiffdump.1.html
tiff/html/man/tiffgt.1.html
tiff/html/man/tiffinfo.1.html
tiff/html/man/tiffmedian.1.html
tiff/html/man/tiffset.1.html
tiff/html/man/tiffsplit.1.html
tiff/html/man/tiffsv.1.html
tiff/html/misc.html
tiff/html/support.html
tiff/html/tools.html
tiff/html/v3.4beta007.html
tiff/html/v3.4beta016.html
tiff/html/v3.4beta018.html
tiff/html/v3.4beta024.html
tiff/html/v3.4beta028.html
tiff/html/v3.4beta029.html
tiff/html/v3.4beta031.html
tiff/html/v3.4beta032.html
tiff/html/v3.4beta033.html
tiff/html/v3.4beta034.html
tiff/html/v3.4beta035.html
tiff/html/v3.4beta036.html
tiff/html/v3.5.1.html
tiff/html/v3.5.2.html
tiff/html/v3.5.3.html
tiff/html/v3.5.4.html
tiff/html/v3.5.5.html
tiff/html/v3.5.6-beta.html
tiff/html/v3.5.7.html
tiff/html/v3.6.0.html
tiff/html/v3.6.1.html
tiff/html/v3.7.0.html
tiff/html/v3.7.0alpha.html
tiff/html/v3.7.0beta.html
tiff/html/v3.7.0beta2.html
tiff/html/v3.7.1.html
tiff/html/v3.7.2.html
tiff/html/v3.7.3.html
tiff/html/v3.7.4.html
tiff/html/v3.8.0.html
tiff/html/v3.8.1.html
tiff/html/v3.8.2.html
tiff/html/v3.9.0beta.html
tiff/html/v3.9.1.html
tiff/html/v3.9.2.html
tiff/html/v4.0.0.html
tiff/libtiff-4.pc.in
tiff/libtiff/Makefile.am
tiff/libtiff/Makefile.in
tiff/libtiff/Makefile.vc
tiff/libtiff/SConstruct
tiff/libtiff/libtiff.def
tiff/libtiff/libtiff.map
tiff/libtiff/libtiffxx.map
tiff/libtiff/mkg3states.c
tiff/libtiff/t4.h
tiff/libtiff/tif_aux.c
tiff/libtiff/tif_close.c
tiff/libtiff/tif_codec.c
tiff/libtiff/tif_color.c
tiff/libtiff/tif_compress.c
tiff/libtiff/tif_config.h-vms
tiff/libtiff/tif_config.h.in
tiff/libtiff/tif_config.vc.h
tiff/libtiff/tif_config.wince.h
tiff/libtiff/tif_dir.c
tiff/libtiff/tif_dir.h
tiff/libtiff/tif_dirinfo.c
tiff/libtiff/tif_dirread.c
tiff/libtiff/tif_dirwrite.c
tiff/libtiff/tif_dumpmode.c
tiff/libtiff/tif_error.c
tiff/libtiff/tif_extension.c
tiff/libtiff/tif_fax3.c
tiff/libtiff/tif_fax3.h
tiff/libtiff/tif_fax3sm.c
tiff/libtiff/tif_flush.c
tiff/libtiff/tif_getimage.c
tiff/libtiff/tif_jbig.c
tiff/libtiff/tif_jpeg.c
tiff/libtiff/tif_jpeg_12.c
tiff/libtiff/tif_luv.c
tiff/libtiff/tif_lzma.c
tiff/libtiff/tif_lzw.c
tiff/libtiff/tif_next.c
tiff/libtiff/tif_ojpeg.c
tiff/libtiff/tif_open.c
tiff/libtiff/tif_packbits.c
tiff/libtiff/tif_pixarlog.c
tiff/libtiff/tif_predict.c
tiff/libtiff/tif_predict.h
tiff/libtiff/tif_print.c
tiff/libtiff/tif_read.c
tiff/libtiff/tif_stream.cxx
tiff/libtiff/tif_strip.c
tiff/libtiff/tif_swab.c
tiff/libtiff/tif_thunder.c
tiff/libtiff/tif_tile.c
tiff/libtiff/tif_unix.c
tiff/libtiff/tif_version.c
tiff/libtiff/tif_warning.c
tiff/libtiff/tif_win32.c
tiff/libtiff/tif_write.c
tiff/libtiff/tif_zip.c
tiff/libtiff/tiff.h
tiff/libtiff/tiffconf.h.in
tiff/libtiff/tiffconf.vc.h
tiff/libtiff/tiffconf.wince.h
tiff/libtiff/tiffio.h
tiff/libtiff/tiffio.hxx
tiff/libtiff/tiffiop.h
tiff/libtiff/tiffvers.h
tiff/libtiff/uvcode.h
tiff/m4/acinclude.m4
tiff/m4/libtool.m4
tiff/m4/ltoptions.m4
tiff/m4/ltsugar.m4
tiff/m4/ltversion.m4
tiff/m4/lt~obsolete.m4
tiff/man/Makefile.am
tiff/man/Makefile.in
tiff/man/TIFFClose.3tiff
tiff/man/TIFFDataWidth.3tiff
tiff/man/TIFFError.3tiff
tiff/man/TIFFFlush.3tiff
tiff/man/TIFFGetField.3tiff
tiff/man/TIFFOpen.3tiff
tiff/man/TIFFPrintDirectory.3tiff
tiff/man/TIFFRGBAImage.3tiff
tiff/man/TIFFReadDirectory.3tiff
tiff/man/TIFFReadEncodedStrip.3tiff
tiff/man/TIFFReadEncodedTile.3tiff
tiff/man/TIFFReadRGBAImage.3tiff
tiff/man/TIFFReadRGBAStrip.3tiff
tiff/man/TIFFReadRGBATile.3tiff
tiff/man/TIFFReadRawStrip.3tiff
tiff/man/TIFFReadRawTile.3tiff
tiff/man/TIFFReadScanline.3tiff
tiff/man/TIFFReadTile.3tiff
tiff/man/TIFFSetDirectory.3tiff
tiff/man/TIFFSetField.3tiff
tiff/man/TIFFWarning.3tiff
tiff/man/TIFFWriteDirectory.3tiff
tiff/man/TIFFWriteEncodedStrip.3tiff
tiff/man/TIFFWriteEncodedTile.3tiff
tiff/man/TIFFWriteRawStrip.3tiff
tiff/man/TIFFWriteRawTile.3tiff
tiff/man/TIFFWriteScanline.3tiff
tiff/man/TIFFWriteTile.3tiff
tiff/man/TIFFbuffer.3tiff
tiff/man/TIFFcodec.3tiff
tiff/man/TIFFcolor.3tiff
tiff/man/TIFFmemory.3tiff
tiff/man/TIFFquery.3tiff
tiff/man/TIFFsize.3tiff
tiff/man/TIFFstrip.3tiff
tiff/man/TIFFswab.3tiff
tiff/man/TIFFtile.3tiff
tiff/man/bmp2tiff.1
tiff/man/fax2ps.1
tiff/man/fax2tiff.1
tiff/man/gif2tiff.1
tiff/man/libtiff.3tiff
tiff/man/pal2rgb.1
tiff/man/ppm2tiff.1
tiff/man/ras2tiff.1
tiff/man/raw2tiff.1
tiff/man/rgb2ycbcr.1
tiff/man/sgi2tiff.1
tiff/man/thumbnail.1
tiff/man/tiff2bw.1
tiff/man/tiff2pdf.1
tiff/man/tiff2ps.1
tiff/man/tiff2rgba.1
tiff/man/tiffcmp.1
tiff/man/tiffcp.1
tiff/man/tiffcrop.1
tiff/man/tiffdither.1
tiff/man/tiffdump.1
tiff/man/tiffgt.1
tiff/man/tiffinfo.1
tiff/man/tiffmedian.1
tiff/man/tiffset.1
tiff/man/tiffsplit.1
tiff/man/tiffsv.1
tiff/nmake.opt
tiff/port/Makefile.am
tiff/port/Makefile.in
tiff/port/Makefile.vc
tiff/port/dummy.c
tiff/port/getopt.c
tiff/port/lfind.c
tiff/port/libport.h
tiff/port/strcasecmp.c
tiff/port/strtoul.c
tiff/port/strtoull.c
tiff/test/Makefile.am
tiff/test/Makefile.in
tiff/test/ascii_tag.c
tiff/test/bmp2tiff_palette.sh
tiff/test/bmp2tiff_rgb.sh
tiff/test/check_tag.c
tiff/test/common.sh
tiff/test/gif2tiff.sh
tiff/test/images/README.txt
tiff/test/images/logluv-3c-16b.tiff
tiff/test/images/minisblack-1c-16b.tiff
tiff/test/images/minisblack-1c-8b.pgm
tiff/test/images/minisblack-1c-8b.tiff
tiff/test/images/minisblack-2c-8b-alpha.tiff
tiff/test/images/miniswhite-1c-1b.pbm
tiff/test/images/miniswhite-1c-1b.tiff
tiff/test/images/palette-1c-1b.tiff
tiff/test/images/palette-1c-4b.tiff
tiff/test/images/palette-1c-8b.bmp
tiff/test/images/palette-1c-8b.gif
tiff/test/images/palette-1c-8b.tiff
tiff/test/images/rgb-3c-16b.tiff
tiff/test/images/rgb-3c-8b.bmp
tiff/test/images/rgb-3c-8b.ppm
tiff/test/images/rgb-3c-8b.tiff
tiff/test/long_tag.c
tiff/test/ppm2tiff_pbm.sh
tiff/test/ppm2tiff_pgm.sh
tiff/test/ppm2tiff_ppm.sh
tiff/test/rewrite_tag.c
tiff/test/short_tag.c
tiff/test/strip.c
tiff/test/strip_rw.c
tiff/test/test_arrays.c
tiff/test/test_arrays.h
tiff/test/tiff2pdf.sh
tiff/test/tiff2ps-EPS1.sh
tiff/test/tiff2ps-PS1.sh
tiff/test/tiff2ps-PS2.sh
tiff/test/tiff2ps-PS3.sh
tiff/test/tiff2rgba-logluv-3c-16b.sh
tiff/test/tiff2rgba-minisblack-1c-16b.sh
tiff/test/tiff2rgba-minisblack-1c-8b.sh
tiff/test/tiff2rgba-minisblack-2c-8b-alpha.sh
tiff/test/tiff2rgba-miniswhite-1c-1b.sh
tiff/test/tiff2rgba-palette-1c-1b.sh
tiff/test/tiff2rgba-palette-1c-4b.sh
tiff/test/tiff2rgba-palette-1c-8b.sh
tiff/test/tiff2rgba-rgb-3c-16b.sh
tiff/test/tiff2rgba-rgb-3c-8b.sh
tiff/test/tiffcp-g3-1d-fill.sh
tiff/test/tiffcp-g3-1d.sh
tiff/test/tiffcp-g3-2d-fill.sh
tiff/test/tiffcp-g3-2d.sh
tiff/test/tiffcp-g3.sh
tiff/test/tiffcp-g4.sh
tiff/test/tiffcp-logluv.sh
tiff/test/tiffcp-split-join.sh
tiff/test/tiffcp-split.sh
tiff/test/tiffcp-thumbnail.sh
tiff/test/tiffcrop-R90-logluv-3c-16b.sh
tiff/test/tiffcrop-R90-minisblack-1c-16b.sh
tiff/test/tiffcrop-R90-minisblack-1c-8b.sh
tiff/test/tiffcrop-R90-minisblack-2c-8b-alpha.sh
tiff/test/tiffcrop-R90-miniswhite-1c-1b.sh
tiff/test/tiffcrop-R90-palette-1c-1b.sh
tiff/test/tiffcrop-R90-palette-1c-4b.sh
tiff/test/tiffcrop-R90-palette-1c-8b.sh
tiff/test/tiffcrop-R90-rgb-3c-16b.sh
tiff/test/tiffcrop-R90-rgb-3c-8b.sh
tiff/test/tiffcrop-doubleflip-logluv-3c-16b.sh
tiff/test/tiffcrop-doubleflip-minisblack-1c-16b.sh
tiff/test/tiffcrop-doubleflip-minisblack-1c-8b.sh
tiff/test/tiffcrop-doubleflip-minisblack-2c-8b-alpha.sh
tiff/test/tiffcrop-doubleflip-miniswhite-1c-1b.sh
tiff/test/tiffcrop-doubleflip-palette-1c-1b.sh
tiff/test/tiffcrop-doubleflip-palette-1c-4b.sh
tiff/test/tiffcrop-doubleflip-palette-1c-8b.sh
tiff/test/tiffcrop-doubleflip-rgb-3c-16b.sh
tiff/test/tiffcrop-doubleflip-rgb-3c-8b.sh
tiff/test/tiffcrop-extract-logluv-3c-16b.sh
tiff/test/tiffcrop-extract-minisblack-1c-16b.sh
tiff/test/tiffcrop-extract-minisblack-1c-8b.sh
tiff/test/tiffcrop-extract-minisblack-2c-8b-alpha.sh
tiff/test/tiffcrop-extract-miniswhite-1c-1b.sh
tiff/test/tiffcrop-extract-palette-1c-1b.sh
tiff/test/tiffcrop-extract-palette-1c-4b.sh
tiff/test/tiffcrop-extract-palette-1c-8b.sh
tiff/test/tiffcrop-extract-rgb-3c-16b.sh
tiff/test/tiffcrop-extract-rgb-3c-8b.sh
tiff/test/tiffcrop-extractz14-logluv-3c-16b.sh
tiff/test/tiffcrop-extractz14-minisblack-1c-16b.sh
tiff/test/tiffcrop-extractz14-minisblack-1c-8b.sh
tiff/test/tiffcrop-extractz14-minisblack-2c-8b-alpha.sh
tiff/test/tiffcrop-extractz14-miniswhite-1c-1b.sh
tiff/test/tiffcrop-extractz14-palette-1c-1b.sh
tiff/test/tiffcrop-extractz14-palette-1c-4b.sh
tiff/test/tiffcrop-extractz14-palette-1c-8b.sh
tiff/test/tiffcrop-extractz14-rgb-3c-16b.sh
tiff/test/tiffcrop-extractz14-rgb-3c-8b.sh
tiff/test/tiffdump.sh
tiff/test/tiffinfo.sh
tiff/test/tifftest.h
tiff/tools/Makefile.am
tiff/tools/Makefile.in
tiff/tools/Makefile.vc
tiff/tools/bmp2tiff.c
tiff/tools/fax2ps.c
tiff/tools/fax2tiff.c
tiff/tools/gif2tiff.c
tiff/tools/pal2rgb.c
tiff/tools/ppm2tiff.c
tiff/tools/ras2tiff.c
tiff/tools/rasterfile.h
tiff/tools/raw2tiff.c
tiff/tools/rgb2ycbcr.c
tiff/tools/sgi2tiff.c
tiff/tools/sgisv.c
tiff/tools/thumbnail.c
tiff/tools/tiff2bw.c
tiff/tools/tiff2pdf.c
tiff/tools/tiff2ps.c
tiff/tools/tiff2rgba.c
tiff/tools/tiffcmp.c
tiff/tools/tiffcp.c
tiff/tools/tiffcrop.c
tiff/tools/tiffdither.c
tiff/tools/tiffdump.c
tiff/tools/tiffgt.c
tiff/tools/tiffinfo.c
tiff/tools/tiffmedian.c
tiff/tools/tiffset.c
tiff/tools/tiffsplit.c
tiff/tools/ycbcr.c
toolbin/GenSubstCID.ps
toolbin/afmutil.py
toolbin/apitest.pl
toolbin/bmpcmp.c
toolbin/bughunt.sh
toolbin/bugsByEngineer.pl
toolbin/checkdeps.pl
toolbin/color/icc_creator/ICC Profiles/cmyk_k_ouput_only.icc
toolbin/color/icc_creator/ICC Profiles/ps_emulate_cmyk.icc
toolbin/color/icc_creator/ICC Profiles/ps_emulate_gray.icc
toolbin/color/icc_creator/ICC Profiles/ps_emulate_rgb.icc
toolbin/color/icc_creator/ICC_Creator.sln
toolbin/color/icc_creator/ICC_Creator/CIELAB.h
toolbin/color/icc_creator/ICC_Creator/ICC_Creator.cpp
toolbin/color/icc_creator/ICC_Creator/ICC_Creator.h
toolbin/color/icc_creator/ICC_Creator/ICC_Creator.rc
toolbin/color/icc_creator/ICC_Creator/ICC_Creator.vcproj
toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.cpp
toolbin/color/icc_creator/ICC_Creator/ICC_CreatorDlg.h
toolbin/color/icc_creator/ICC_Creator/icc34.h
toolbin/color/icc_creator/ICC_Creator/icc_create.cpp
toolbin/color/icc_creator/ICC_Creator/icc_create.h
toolbin/color/icc_creator/ICC_Creator/res/ICC_Creator.rc2
toolbin/color/icc_creator/ICC_Creator/res/gsimage_.ico
toolbin/color/icc_creator/ICC_Creator/res/gswin.ico
toolbin/color/icc_creator/ICC_Creator/resource.h
toolbin/color/icc_creator/ICC_Creator/stdafx.cpp
toolbin/color/icc_creator/ICC_Creator/stdafx.h
toolbin/color/icc_creator/ICC_Creator/targetver.h
toolbin/color/icc_creator/README.txt
toolbin/color/icc_creator/effects/black_output.icc
toolbin/color/icc_creator/effects/c_only.txt
toolbin/color/icc_creator/effects/cyan_output.icc
toolbin/color/icc_creator/effects/k_only.txt
toolbin/color/icc_creator/effects/m_only.txt
toolbin/color/icc_creator/effects/magenta_output.icc
toolbin/color/icc_creator/effects/y_only.txt
toolbin/color/icc_creator/effects/yellow_output.icc
toolbin/color/icc_creator/example/artifex_blue_purple.icc
toolbin/color/icc_creator/example/artifex_tritone.icc
toolbin/color/icc_creator/example/cielab_values.txt
toolbin/color/icc_creator/example/color_names.txt
toolbin/color/icc_creator/example/duotone.pdf
toolbin/color/icc_creator/example/tritone.pdf
toolbin/color/icc_creator/example/tritone_cielab.txt
toolbin/color/icc_creator/example/tritone_names.txt
toolbin/color/icc_creator/ucr_bg.txt
toolbin/color/named_color/named_color_table.txt
toolbin/color/named_color/named_colors.pdf
toolbin/color/src_color/cmyk_des_renderintent.icc
toolbin/color/src_color/cmyk_src_cyan.icc
toolbin/color/src_color/cmyk_src_magenta.icc
toolbin/color/src_color/cmyk_src_renderintent.icc
toolbin/color/src_color/cmyk_src_yellow.icc
toolbin/color/src_color/objsrc_profiles_example.txt
toolbin/color/src_color/rgb_source_blue.icc
toolbin/color/src_color/rgb_source_green.icc
toolbin/color/src_color/rgb_source_red.icc
toolbin/drawafm.ps
toolbin/encs2c.ps
toolbin/errlist.tcl
toolbin/extractFonts.ps
toolbin/extractICCprofiles.ps
toolbin/gen_ldf_jb2.py
toolbin/genfontmap.ps
toolbin/gitlog2changelog.py
toolbin/gitsetup.sh
toolbin/gsmake
toolbin/gsmake.tcl
toolbin/halftone/ETS/README.txt
toolbin/halftone/ETS/ei03.pdf
toolbin/halftone/ETS/ets.c
toolbin/halftone/ETS/ets.h
toolbin/halftone/ETS/ipview.html
toolbin/halftone/ETS/test_ets.c
toolbin/halftone/ETS/tm.h
toolbin/halftone/ETS/win32/ETS.sln
toolbin/halftone/ETS/win32/ETS.vcproj
toolbin/halftone/gen_ordered/README
toolbin/halftone/gen_ordered/gen_ordered.c
toolbin/halftone/gen_ordered/gen_ordered.sln
toolbin/halftone/gen_ordered/gen_ordered.vcproj
toolbin/halftone/gen_stochastic/gen_stochastic.c
toolbin/halftone/gen_stochastic/gen_stochastic.sln
toolbin/halftone/gen_stochastic/gen_stochastic.vcproj
toolbin/headers.tcl
toolbin/htmldiff.pl
toolbin/jpxtopdf.c
toolbin/leaks.tcl
toolbin/localcluster/clusterpush.pl
toolbin/localcluster/clusterpush.txt
toolbin/localcluster/gitpush.sh
toolbin/localcluster/readme
toolbin/makehist.tcl
toolbin/memory.py
toolbin/ocheck.py
toolbin/pdf_info.ps
toolbin/pdfinflt.ps
toolbin/performance.pl
toolbin/pre.chk
toolbin/pre.tcl
toolbin/precheck.tcl
toolbin/pscet_status.pl
toolbin/search-svn-revs
toolbin/search/README
toolbin/smoke.ps
toolbin/split_changelog.py
toolbin/squeeze2html.pl
toolbin/suite.tcl
toolbin/tests/README
toolbin/tests/build_revision.py
toolbin/tests/check_all.py
toolbin/tests/check_comments.py
toolbin/tests/check_dirs.py
toolbin/tests/check_docrefs.py
toolbin/tests/check_source.py
toolbin/tests/cmpi.py
toolbin/tests/collate.py
toolbin/tests/compare_checksumdb.py
toolbin/tests/compare_checksums.py
toolbin/tests/dump_checksum.py
toolbin/tests/dump_checksum_plus.py
toolbin/tests/dump_checksum_raw.py
toolbin/tests/find_unique_file.py
toolbin/tests/fuzzy.c
toolbin/tests/get_baseline_log.py
toolbin/tests/get_baselines.py
toolbin/tests/gscheck_all.py
toolbin/tests/gscheck_fuzzypdf.py
toolbin/tests/gscheck_pdfwrite.py
toolbin/tests/gscheck_raster.py
toolbin/tests/gscheck_testfiles.py
toolbin/tests/gsconf.py
toolbin/tests/gsparamsets.py
toolbin/tests/gssum.py
toolbin/tests/gstestgs.py
toolbin/tests/gstestutils.py
toolbin/tests/gsutil.py
toolbin/tests/gsvalidate.py
toolbin/tests/main.py
toolbin/tests/make_baselinedb.py
toolbin/tests/make_testdb.py
toolbin/tests/make_two_pdfversions
toolbin/tests/make_two_versions
toolbin/tests/myoptparse.py
toolbin/tests/rasterdb.py
toolbin/tests/regen_baseline.py
toolbin/tests/regen_filelist.py
toolbin/tests/revert_baseline
toolbin/tests/revert_pdfbaseline
toolbin/tests/run_nightly
toolbin/tests/run_nightly.py
toolbin/tests/run_parallel
toolbin/tests/run_regression.py
toolbin/tests/run_series.py
toolbin/tests/testdiff.py
toolbin/tests/testing.cfg.example
toolbin/tests/update_baseline.py
toolbin/tests/update_specific
toolbin/tests/updatelist.py
toolbin/tests/updatelistpdf.py
toolbin/tests/validate.py
toolbin/tmake.tcl
toolbin/vg_bugs.supp
toolbin/vg_okay.supp
tools/Acrobat2Tiff/Acrobat2Tiff.sln
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vb
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vbproj
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.Designer.vb
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.myapp
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/AssemblyInfo.vb
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.Designer.vb
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.resx
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.Designer.vb
tools/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.settings
tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.exe
tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.vshost.exe
tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.xml
tools/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Interop.Acrobat.dll
tools/GOT/README
tools/GOT/detag.c
tools/GOT/dotags.sh
tools/GOT/tagimage.c
tools/bitfont.pcl
tools/bitfonts.pxl
tools/cat_url.py
tools/check_deps.py
tools/cmpi/Makefile
tools/cmpi/Makefile.in
tools/cmpi/README
tools/cmpi/cmpi.bkl
tools/cmpi/cmpi.cpp
tools/cmpi/cmpi.dsp
tools/cmpi/cmpi.dsw
tools/cmpi/cmpi.pro
tools/cmpi/cmpi.rc
tools/cmpi/cmpi.sln
tools/cmpi/cmpi.suo
tools/cmpi/cmpi.vcp
tools/cmpi/cmpi.vcproj
tools/cmpi/cmpi.vcw
tools/cmpi/descrip.mms
tools/cmpi/makefile.bcc
tools/cmpi/makefile.dmc
tools/cmpi/makefile.dms
tools/cmpi/makefile.dos
tools/cmpi/makefile.gcc
tools/cmpi/makefile.sc
tools/cmpi/makefile.unx
tools/cmpi/makefile.va
tools/cmpi/makefile.vc
tools/cmpi/makefile.wat
tools/colorcirc.xps
tools/docov.pl
tools/fills.pcl
tools/fontpage.pcl
tools/fonts.pcl
tools/fonts.pxl
tools/frs96.pxl
tools/gl-chars.pcl
tools/gl2_chars.pl
tools/grashopp.pcl
tools/grid.pcl
tools/label.tst
tools/lineprinter.pcl
tools/make_snapshot.sh
tools/makeromttf.py
tools/null.pxl
tools/opaque.pcl
tools/origins.pcl
tools/owl.pcl
tools/owl2.pcl
tools/pattern.pcl
tools/pattern.pxl
tools/pcl2pdf
tools/pcl2pdf.bat
tools/pcl2pdfwr
tools/pcl2pdfwr.bat
tools/plot2pdf.sh
tools/pxlasm.py
tools/pxldis.py
tools/regress.sh
tools/revlist.py
tools/smoke_baseline.txt
tools/smoke_check.sh
tools/smoke_update.sh
tools/suite.tcl
tools/tiger.px3
tools/tiger.svg
tools/tiger.xps
tools/tt2pcl.c
tools/vasarely.px3
tools/xps2tiff/README
tools/xps2tiff/xps2tiff.sln
tools/xps2tiff/xps2tiff/AssemblyInfo.cpp
tools/xps2tiff/xps2tiff/stdafx.cpp
tools/xps2tiff/xps2tiff/stdafx.h
tools/xps2tiff/xps2tiff/xps2tiff.cpp
tools/xps2tiff/xps2tiff/xps2tiff.vcproj
urwfonts/A028-Ext.ttf
urwfonts/A028-Med.ttf
urwfonts/A030-Bol.ttf
urwfonts/A030-BolIta.ttf
urwfonts/A030-Ita.ttf
urwfonts/A030-Reg.ttf
urwfonts/AntiqueOlive-Bol.ttf
urwfonts/AntiqueOlive-Ita.ttf
urwfonts/AntiqueOlive-Reg.ttf
urwfonts/ArtLinePrinter.ttf
urwfonts/CenturySchL-Bold.ttf
urwfonts/CenturySchL-BoldItal.ttf
urwfonts/CenturySchL-Ital.ttf
urwfonts/CenturySchL-Roma.ttf
urwfonts/ClarendonURW-BolCon.ttf
urwfonts/Coronet.ttf
urwfonts/Dingbats.ttf
urwfonts/GaramondNo8-Ita.ttf
urwfonts/GaramondNo8-Med.ttf
urwfonts/GaramondNo8-MedIta.ttf
urwfonts/GaramondNo8-Reg.ttf
urwfonts/LetterGothic-Bol.ttf
urwfonts/LetterGothic-Ita.ttf
urwfonts/LetterGothic-Reg.ttf
urwfonts/Mauritius-Reg.ttf
urwfonts/NewDingbats.ttf
urwfonts/NimbusMonL-Bold.ttf
urwfonts/NimbusMonL-BoldObli.ttf
urwfonts/NimbusMonL-Regu.ttf
urwfonts/NimbusMonL-ReguObli.ttf
urwfonts/NimbusMono-Bol.ttf
urwfonts/NimbusMono-BolIta.ttf
urwfonts/NimbusMono-Ita.ttf
urwfonts/NimbusMono-Reg.ttf
urwfonts/NimbusRomNo9L-Medi.ttf
urwfonts/NimbusRomNo9L-MediItal.ttf
urwfonts/NimbusRomNo9L-Regu.ttf
urwfonts/NimbusRomNo9L-ReguItal.ttf
urwfonts/NimbusRomanNo4-Bol.ttf
urwfonts/NimbusRomanNo4-BolIta.ttf
urwfonts/NimbusRomanNo4-Lig.ttf
urwfonts/NimbusRomanNo4-LigIta.ttf
urwfonts/NimbusRomanNo9-Ita.ttf
urwfonts/NimbusRomanNo9-Med.ttf
urwfonts/NimbusRomanNo9-MedIta.ttf
urwfonts/NimbusRomanNo9-Reg.ttf
urwfonts/NimbusSanL-Bold.ttf
urwfonts/NimbusSanL-BoldCond.ttf
urwfonts/NimbusSanL-BoldCondItal.ttf
urwfonts/NimbusSanL-BoldItal.ttf
urwfonts/NimbusSanL-Regu.ttf
urwfonts/NimbusSanL-ReguCond.ttf
urwfonts/NimbusSanL-ReguCondItal.ttf
urwfonts/NimbusSanL-ReguItal.ttf
urwfonts/StandardSymL.ttf
urwfonts/U001-Bol.ttf
urwfonts/U001-BolIta.ttf
urwfonts/U001-Ita.ttf
urwfonts/U001-Reg.ttf
urwfonts/U001Con-Bol.ttf
urwfonts/U001Con-BolIta.ttf
urwfonts/U001Con-Ita.ttf
urwfonts/U001Con-Reg.ttf
urwfonts/URWBookmanL-DemiBold.ttf
urwfonts/URWBookmanL-DemiBoldItal.ttf
urwfonts/URWBookmanL-Ligh.ttf
urwfonts/URWBookmanL-LighItal.ttf
urwfonts/URWChanceryL-MediItal.ttf
urwfonts/URWClassico-Bol.ttf
urwfonts/URWClassico-BolIta.ttf
urwfonts/URWClassico-Ita.ttf
urwfonts/URWClassico-Reg.ttf
urwfonts/URWGothicL-Book.ttf
urwfonts/URWGothicL-BookObli.ttf
urwfonts/URWGothicL-Demi.ttf
urwfonts/URWGothicL-DemiObli.ttf
urwfonts/URWPalladioL-Bold.ttf
urwfonts/URWPalladioL-BoldItal.ttf
urwfonts/URWPalladioL-Ital.ttf
urwfonts/URWPalladioL-Roma.ttf
win32/GhostPDL.sln
win32/ReadMe.txt
win32/language_switch.vcproj
win32/pcl.vcproj
win32/xps.vcproj
winrt/GhostPDL.sln
xcode/GhostPDL/GhostPDL.xcodeproj/project.pbxproj
xcode/GhostPDL/GhostPDL.xcodeproj/project.xcworkspace/contents.xcworkspacedata
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/GhostPDL.xcscheme
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/ghostscript.xcscheme
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/language_switch.xcscheme
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/pcl.xcscheme
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/svg.xcscheme
xcode/GhostPDL/GhostPDL.xcodeproj/xcshareddata/xcschemes/xps.xcscheme
xcode/Makefile
xcode/clang_wrapper.c
xcode/clang_wrapper.sh
xcode/resolve.sh
xps/tools/colorcirc.xps
xps/tools/tiger.xps
xps/tools/xps2tiff/README
xps/tools/xps2tiff/xps2tiff.sln
xps/tools/xps2tiff/xps2tiff/AssemblyInfo.cpp
xps/tools/xps2tiff/xps2tiff/stdafx.cpp
xps/tools/xps2tiff/xps2tiff/stdafx.h
xps/tools/xps2tiff/xps2tiff/xps2tiff.cpp
xps/tools/xps2tiff/xps2tiff/xps2tiff.vcproj
xps/xps.mak
xps/xpsromfs.mak
zlib/CMakeLists.txt
zlib/ChangeLog
zlib/FAQ
zlib/INDEX
zlib/Makefile
zlib/Makefile.in
zlib/README
zlib/adler32.c
zlib/amiga/Makefile.pup
zlib/amiga/Makefile.sas
zlib/as400/bndsrc
zlib/as400/compile.clp
zlib/as400/readme.txt
zlib/as400/zlib.inc
zlib/compress.c
zlib/configure
zlib/contrib/README.contrib
zlib/contrib/ada/buffer_demo.adb
zlib/contrib/ada/mtest.adb
zlib/contrib/ada/read.adb
zlib/contrib/ada/readme.txt
zlib/contrib/ada/test.adb
zlib/contrib/ada/zlib-streams.adb
zlib/contrib/ada/zlib-streams.ads
zlib/contrib/ada/zlib-thin.adb
zlib/contrib/ada/zlib-thin.ads
zlib/contrib/ada/zlib.adb
zlib/contrib/ada/zlib.ads
zlib/contrib/ada/zlib.gpr
zlib/contrib/amd64/amd64-match.S
zlib/contrib/asm686/README.686
zlib/contrib/asm686/match.S
zlib/contrib/blast/Makefile
zlib/contrib/blast/README
zlib/contrib/blast/blast.c
zlib/contrib/blast/blast.h
zlib/contrib/blast/test.pk
zlib/contrib/blast/test.txt
zlib/contrib/delphi/ZLib.pas
zlib/contrib/delphi/ZLibConst.pas
zlib/contrib/delphi/readme.txt
zlib/contrib/delphi/zlibd32.mak
zlib/contrib/dotzlib/DotZLib.build
zlib/contrib/dotzlib/DotZLib.chm
zlib/contrib/dotzlib/DotZLib.sln
zlib/contrib/dotzlib/DotZLib/AssemblyInfo.cs
zlib/contrib/dotzlib/DotZLib/ChecksumImpl.cs
zlib/contrib/dotzlib/DotZLib/CircularBuffer.cs
zlib/contrib/dotzlib/DotZLib/CodecBase.cs
zlib/contrib/dotzlib/DotZLib/Deflater.cs
zlib/contrib/dotzlib/DotZLib/DotZLib.cs
zlib/contrib/dotzlib/DotZLib/DotZLib.csproj
zlib/contrib/dotzlib/DotZLib/GZipStream.cs
zlib/contrib/dotzlib/DotZLib/Inflater.cs
zlib/contrib/dotzlib/DotZLib/UnitTests.cs
zlib/contrib/dotzlib/LICENSE_1_0.txt
zlib/contrib/dotzlib/readme.txt
zlib/contrib/gcc_gvmat64/gvmat64.S
zlib/contrib/infback9/README
zlib/contrib/infback9/infback9.c
zlib/contrib/infback9/infback9.h
zlib/contrib/infback9/inffix9.h
zlib/contrib/infback9/inflate9.h
zlib/contrib/infback9/inftree9.c
zlib/contrib/infback9/inftree9.h
zlib/contrib/inflate86/inffas86.c
zlib/contrib/inflate86/inffast.S
zlib/contrib/iostream/test.cpp
zlib/contrib/iostream/zfstream.cpp
zlib/contrib/iostream/zfstream.h
zlib/contrib/iostream2/zstream.h
zlib/contrib/iostream2/zstream_test.cpp
zlib/contrib/iostream3/README
zlib/contrib/iostream3/TODO
zlib/contrib/iostream3/test.cc
zlib/contrib/iostream3/zfstream.cc
zlib/contrib/iostream3/zfstream.h
zlib/contrib/masmx64/bld_ml64.bat
zlib/contrib/masmx64/gvmat64.asm
zlib/contrib/masmx64/inffas8664.c
zlib/contrib/masmx64/inffasx64.asm
zlib/contrib/masmx64/readme.txt
zlib/contrib/masmx86/bld_ml32.bat
zlib/contrib/masmx86/inffas32.asm
zlib/contrib/masmx86/match686.asm
zlib/contrib/masmx86/readme.txt
zlib/contrib/minizip/Makefile
zlib/contrib/minizip/Makefile.am
zlib/contrib/minizip/MiniZip64_Changes.txt
zlib/contrib/minizip/MiniZip64_info.txt
zlib/contrib/minizip/configure.ac
zlib/contrib/minizip/crypt.h
zlib/contrib/minizip/ioapi.c
zlib/contrib/minizip/ioapi.h
zlib/contrib/minizip/iowin32.c
zlib/contrib/minizip/iowin32.h
zlib/contrib/minizip/make_vms.com
zlib/contrib/minizip/miniunz.c
zlib/contrib/minizip/miniunzip.1
zlib/contrib/minizip/minizip.1
zlib/contrib/minizip/minizip.c
zlib/contrib/minizip/minizip.pc.in
zlib/contrib/minizip/mztools.c
zlib/contrib/minizip/mztools.h
zlib/contrib/minizip/unzip.c
zlib/contrib/minizip/unzip.h
zlib/contrib/minizip/zip.c
zlib/contrib/minizip/zip.h
zlib/contrib/pascal/example.pas
zlib/contrib/pascal/readme.txt
zlib/contrib/pascal/zlibd32.mak
zlib/contrib/pascal/zlibpas.pas
zlib/contrib/puff/Makefile
zlib/contrib/puff/README
zlib/contrib/puff/puff.c
zlib/contrib/puff/puff.h
zlib/contrib/puff/pufftest.c
zlib/contrib/puff/zeros.raw
zlib/contrib/testzlib/testzlib.c
zlib/contrib/testzlib/testzlib.txt
zlib/contrib/untgz/Makefile
zlib/contrib/untgz/Makefile.msc
zlib/contrib/untgz/untgz.c
zlib/contrib/vstudio/readme.txt
zlib/contrib/vstudio/vc10/miniunz.vcxproj
zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters
zlib/contrib/vstudio/vc10/minizip.vcxproj
zlib/contrib/vstudio/vc10/minizip.vcxproj.filters
zlib/contrib/vstudio/vc10/testzlib.vcxproj
zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters
zlib/contrib/vstudio/vc10/testzlibdll.vcxproj
zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters
zlib/contrib/vstudio/vc10/zlib.rc
zlib/contrib/vstudio/vc10/zlibstat.vcxproj
zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters
zlib/contrib/vstudio/vc10/zlibvc.def
zlib/contrib/vstudio/vc10/zlibvc.sln
zlib/contrib/vstudio/vc10/zlibvc.vcxproj
zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters
zlib/contrib/vstudio/vc11/miniunz.vcxproj
zlib/contrib/vstudio/vc11/minizip.vcxproj
zlib/contrib/vstudio/vc11/testzlib.vcxproj
zlib/contrib/vstudio/vc11/testzlibdll.vcxproj
zlib/contrib/vstudio/vc11/zlib.rc
zlib/contrib/vstudio/vc11/zlibstat.vcxproj
zlib/contrib/vstudio/vc11/zlibvc.def
zlib/contrib/vstudio/vc11/zlibvc.sln
zlib/contrib/vstudio/vc11/zlibvc.vcxproj
zlib/contrib/vstudio/vc9/miniunz.vcproj
zlib/contrib/vstudio/vc9/minizip.vcproj
zlib/contrib/vstudio/vc9/testzlib.vcproj
zlib/contrib/vstudio/vc9/testzlibdll.vcproj
zlib/contrib/vstudio/vc9/zlib.rc
zlib/contrib/vstudio/vc9/zlibstat.vcproj
zlib/contrib/vstudio/vc9/zlibvc.def
zlib/contrib/vstudio/vc9/zlibvc.sln
zlib/contrib/vstudio/vc9/zlibvc.vcproj
zlib/crc32.c
zlib/crc32.h
zlib/deflate.c
zlib/deflate.h
zlib/doc/algorithm.txt
zlib/doc/rfc1950.txt
zlib/doc/rfc1951.txt
zlib/doc/rfc1952.txt
zlib/doc/txtvsbin.txt
zlib/examples/README.examples
zlib/examples/enough.c
zlib/examples/fitblk.c
zlib/examples/gun.c
zlib/examples/gzappend.c
zlib/examples/gzjoin.c
zlib/examples/gzlog.c
zlib/examples/gzlog.h
zlib/examples/zlib_how.html
zlib/examples/zpipe.c
zlib/examples/zran.c
zlib/gzclose.c
zlib/gzguts.h
zlib/gzlib.c
zlib/gzread.c
zlib/gzwrite.c
zlib/infback.c
zlib/inffast.c
zlib/inffast.h
zlib/inffixed.h
zlib/inflate.c
zlib/inflate.h
zlib/inftrees.c
zlib/inftrees.h
zlib/make_vms.com
zlib/msdos/Makefile.bor
zlib/msdos/Makefile.dj2
zlib/msdos/Makefile.emx
zlib/msdos/Makefile.msc
zlib/msdos/Makefile.tc
zlib/nintendods/Makefile
zlib/nintendods/README
zlib/old/Makefile.emx
zlib/old/Makefile.riscos
zlib/old/README
zlib/old/descrip.mms
zlib/old/os2/Makefile.os2
zlib/old/os2/zlib.def
zlib/old/visual-basic.txt
zlib/qnx/package.qpg
zlib/test/example.c
zlib/test/infcover.c
zlib/test/minigzip.c
zlib/treebuild.xml
zlib/trees.c
zlib/trees.h
zlib/uncompr.c
zlib/watcom/watcom_f.mak
zlib/watcom/watcom_l.mak
zlib/win32/DLL_FAQ.txt
zlib/win32/Makefile.bor
zlib/win32/Makefile.gcc
zlib/win32/Makefile.msc
zlib/win32/README-WIN32.txt
zlib/win32/VisualC.txt
zlib/win32/zlib.def
zlib/win32/zlib1.rc
zlib/zconf.h
zlib/zconf.h.cmakein
zlib/zconf.h.in
zlib/zlib.3
zlib/zlib.3.pdf
zlib/zlib.h
zlib/zlib.map
zlib/zlib.pc.cmakein
zlib/zlib.pc.in
zlib/zlib2ansi
zlib/zutil.c
zlib/zutil.h


2015-07-19 22:51:01 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
7fd9e0be26e67c36f87733bc89ea07dc26d9f839

Modify clusterpush.pl to handle build_consolidation directory structure.

gs/toolbin/localcluster/clusterpush.pl


2015-07-15 16:10:30 +0100
Ken Sharp <ken.sharp@artifex.com>
f374cec0a68ad63707f398967f1a9fb38163fdae

pdfwrite - More fiddling with symbolic TrueType fonts

Bug #695969 "Regression: Missing umlauts starting with 28b7d3c75adb8e942f2158bdec445a147f945530"

The problem here is the way that Acrobat behaves with symbolic fonts. If we define
a font as 'symbolic', then we don't write an Encoding (its not permitted
with PDF/A, and is technically invalid), and Acrobat uses the font's 1,0
CMAP subtable.

If we do not write the font as symbolic then we need to write an Encoding. In
this case it seems that Acrobat uses the embedded font's 3,1 CMAP subtable.

The problem is that the two tables need not be consistent, and in the case
of this file, are not. The character code 77 maps to GID 48 in both cases
but the character code 252 maps to GID 129 (a composite glyph) with the 3,1
CMAP and to a /.notdef with the 1,0 CMAP.

This is only a problem if we *don't* subset the font, because if we subset the
font we *generate* a set of CMAP subtables, and we generate tables which
are consistent with each other.

I did consider forcing the CMAP tables to be generated, even when not subsetting
the font, but this font contains more than 255 glyphs, so we can't fit them
all into a 1,0 CMAP anyway, so which ones should we use ?

So instead, if we have a TrueType font, are embedding it, are *not* subsetting it
*and* the original font was 'not symbolic', (which we test by looking for the
presence of a 'nearest_encoding_index' in the original font as this is set
from the is_symbolic flag in the PDF interpreter, which is set from the
original font descriptor Flags value), then we do *NOT* mark the font as
symbolic.

This also means altering the check against creating an Encoding, if we are
(eventually) going to make the font non-symbolic, then we need to add an
Encoding to it as well.

This causes a difference in one cluster test, this is due to the fact that
the font can't be embedded due to licencing restrictions. Because of this
the output was already incorrect, its now incorrect in a slightly different
way.

gs/devices/vector/gdevpdtd.c
gs/devices/vector/gdevpdtt.c


2015-07-13 16:03:38 +0100
Ken Sharp <ken.sharp@artifex.com>
962c6299e5fe72120eba0f966cbd0430105d8b49

Update TrueType font copying code to handle OpenType 1.7 OS/2 tables

Bug #696049 "Postscript can not konverted to PDF"

The embedded TrueType font conforms to version 1.7 of the OpenType specifiction
which introduces 2 new variables to the OS/2 table. This makes the OS/2 table
length too great for the sanity checks in the code and it abrots with an error.

This commit extends the checking to cater for version 1.7 OpenType OS/2
tables, and removes an unused variable at the same time.

No differences expected.

gs/base/gxttf.h
gs/devices/vector/gdevpsft.c


2015-07-13 10:08:41 +0100
Ken Sharp <ken.sharp@artifex.com>
7a18e49ebfbc225a3f1e8562571a2fc70fb61c48

PDF interpreter - check type of XObject resoruces when scanning for transparency

Bug #696083 "Error reading PDF file"

The PDF file has a single page, but the /Pages dictionary has a Resources
dictionary (which is consulted if any page is missing a resource definition)

The Page is complete, but when scanning for the presence of transparency
(to improve performance) we test any 'Parent' resources as well, and in this
case the Pages dictionary contains an XObject resource which is incorrect.

Instead of a dictoinary, its an integer, and since that's the wrong type we
throw an error.

This commit checks the type of XObject resources during scanning for transparency
and ignores (with a warning) any which have an incorrect type.

No differences expected.

gs/Resource/Init/pdf_main.ps


2015-06-02 11:07:45 +0100
Ken Sharp <ken.sharp@artifex.com>
aa48df9c6d4af5e611e8b641d8c544885f59b2ac

graphics library and interpreter changes to allow us to subclass the
pattern accumulator device.

The main change is to pass a structure to the
device_spec_op which handle patterns. This structure carries the graphcs
state, which we require. This has required altering pdfwrite (the only
device currently implementing these spec_ops) and all the interpreters in
order to pass the required information.

An additional change places the GC structure descriptor for the pattern
accumulator device in the device structure's 'stype' instead of leaving it
NULL. We can't subclass devices with a NULL stype.

gs/base/gsptype1.c
gs/base/gxdevsop.h
gs/base/gxpcmap.c
gs/devices/vector/gdevpdfd.c
gs/devices/vector/gdevpdfi.c
gs/psi/zpcolor.c
pxl/pxink.c
xps/xpstile.c


2015-07-10 14:38:15 +0100
Chris Liddell <chris.liddell@artifex.com>
a3598cd629a959c189a9b2195640c3d5bdf8490d

Makefile: Add ZI_ macro for zlib include

For files that only need zlib (and not, for example libpng nor libtiff), add a
makefile macro just for the zlib include path, and tweak to use it where
appropriate (gdevfpng.c doesn't use libpng but does use zlib).

No cluster differences

gs/base/gs.mak
gs/devices/devs.mak


2015-07-10 14:48:51 +0100
Ken Sharp <ken.sharp@artifex.com>
5a3bcaf5439ce0f911297d8e2a5699cd4cd983f3

Initialise a variable to silence scan-build (it can't actually be used uninitialised)

gs/base/gdevdflt.c


2015-07-10 14:39:14 +0100
Ken Sharp <ken.sharp@artifex.com>
326a116687ee35db6d1bdcc54f2a8b2fb4458878

PDF interpreter - alter rebuilding of xref when problems are detected

Bug #696084 "Page rendered blank"

The file is pretty classically broken. It starts with an entry in the xref
for object 290 which is not flagged as 'free'. However, when we check the
file at the given offset it actually points to object 228.

This triggers us to rescan the file, because the xref is broken. So we sweep
the file from beginning to end looking for the sequence 'x y obj'. NB we
don't (can't) do this for object streams, because those are compressed.

When we find an object definition we enter it into the rebuilt xref table.

However, this file contains duplicate definitions for all the page objects
which leads us to emit a warning that there are multiple definitions and the
output may be incorrect. The rebuilding code uses the *last* definition of
a given object and the highest generation number, because in general when
there are multiple definitions of the same object, the last one is the one
that's correct (PDF tools usually modify the file by appending rather than
writing into the middle of the file).

However, in this case, the *first* definition is the correct one. Not only
that but the second definitions aren't even valid.....

So the problem is caused by; a broken xref table, multiple definitions of
the same object, and the later definitions being invalid.

I've worked around this by checking the *original* xref table and if one of
the definitions is at the same offset as defined in the original xref we now
always prefer that definition, otherwise we prefer the last definition, as
before.

No differences expected.

gs/Resource/Init/pdf_rbld.ps


2015-07-10 09:00:16 +0100
Ken Sharp <ken.sharp@artifex.com>
4dbd8ee3ffa0c0f18fe43acff3e859b61323844b

Coverity IDs 101838 and 101840

gs/base/gdevsclass.c


2015-07-10 08:44:52 +0100
Ken Sharp <ken.sharp@artifex.com>
202bd93e65d5f30070de06f4dc449450e316ebad

Coverity ID 101842, checking 'dev' and 'child' before dereferencing

gs/base/gdevdflt.c


2015-07-10 08:30:00 +0100
Ken Sharp <ken.sharp@artifex.com>
e28d75a2f2b7828d1d6deb7667f545c7c73ace33

Coverity IDs 101844, 101843, 101839

I don't think that dev can be NULL here, but just for safety.

gs/base/gdevmplt.c


2015-07-09 15:14:11 +0100
Ken Sharp <ken.sharp@artifex.com>
80653628e28a8520a48b0ca3bb9cd0e1a1874001

Move variable to procedure header, from body

This caused PCL not to build on VS and (at least sometimes) on Linuc but
oddly was not a problem on the cluster.

pl/plmain.c


2015-07-09 15:13:13 +0100
Ken Sharp <ken.sharp@artifex.com>
f6214c2d6f8ed3aea4f4e7140899489ada5ccc46

Fix a potential uninitialised variable spotted by scan-build

pcl/pcpalet.c


2014-10-17 14:51:52 +0100
Ken Sharp <ken.sharp@artifex.com>
f98b0b84a7f7c1833550ee3938f60aef356840c3

Addition of device 'subclassing'

This is a new feature in the graphcs library which allows for a chain of
devices to be created and for new devices to be created and added to that
chain, even if the graphcs state is not available.

The work for ths was originally performed on the 'device_subclassing'
branch, and all the history is maikntained in that branch. This single
commit embodies all the work, but none of the history.

The background to the code is documented in ghostpdl/doc/subclass.htm.

In addition to the graphics library support for this feature there are two
new devices; the First Page/Last Page device and the Object Filtering
device.

gs/Resource/Init/gs_pdfwr.ps
gs/Resource/Init/pdf_main.ps
gs/base/gdevbbox.c
gs/base/gdevdevn.c
gs/base/gdevdflt.c
gs/base/gdevdgbr.c
gs/base/gdevflp.c
gs/base/gdevflp.h
gs/base/gdevkrnlsclass.c
gs/base/gdevkrnlsclass.h
gs/base/gdevmplt.c
gs/base/gdevmplt.h
gs/base/gdevnfwd.c
gs/base/gdevoflt.c
gs/base/gdevoflt.h
gs/base/gdevp14.c
gs/base/gdevprn.c
gs/base/gdevsclass.c
gs/base/gdevsclass.h
gs/base/gdevvec.c
gs/base/gscspace.c
gs/base/gsdevice.c
gs/base/gsdparam.c
gs/base/gserrors.h
gs/base/gsicc_manage.c
gs/base/gsicc_replacecm.c
gs/base/gsovrc.c
gs/base/gspaint.c
gs/base/gsstate.c
gs/base/gxclbits.c
gs/base/gxclist.c
gs/base/gxclist.h
gs/base/gxclpage.c
gs/base/gxclrast.c
gs/base/gxcmap.c
gs/base/gxdcolor.c
gs/base/gxdevcli.h
gs/base/gxdevice.h
gs/base/gxpcmap.c
gs/base/lib.mak
gs/contrib/opvp/gdevopvp.c
gs/contrib/pcl3/eprn/gdeveprn.c
gs/contrib/pcl3/src/gdevpcl3.c
gs/devices/gdevbit.c
gs/devices/gdevcdj.c
gs/devices/gdevdsp.c
gs/devices/gdevfpng.c
gs/devices/gdevpbm.c
gs/devices/gdevtfax.c
gs/devices/gdevtifs.c
gs/devices/gdevtsep.c
gs/devices/gdevupd.c
gs/devices/gdevwdib.c
gs/devices/gdevwpr2.c
gs/devices/gdevx.c
gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfc.c
gs/devices/vector/gdevpdfc.h
gs/devices/vector/gdevpdfi.c
gs/devices/vector/gdevpdfk.c
gs/devices/vector/gdevpdfo.c
gs/devices/vector/gdevpdfo.h
gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdfv.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdtd.c
gs/devices/vector/gdevpdtt.c
gs/devices/vector/gdevpsdu.c
gs/devices/vector/gdevpx.c
gs/devices/vector/gdevtxtw.c
gs/devices/vector/gdevxps.c
gs/doc/Use.htm
gs/doc/subclass.htm
gs/psi/zdevice2.c
pcl/pcl.mak
pcl/pcpalet.c
pl/plmain.c
psi/psitop.c


2015-07-07 16:57:41 +0100
Chris Liddell <chris.liddell@artifex.com>
0c0b0859ae1aba64861599f0e7f74f143f305932

Bug 696041: sanity check for memory allocation.

In gs_heap_alloc_bytes(), add a sanity check to ensure we don't overflow the
variable holding the actual number of bytes we allocate.

No cluster differences

gs/base/gsmalloc.c


2015-07-05 17:56:30 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
9d53a5175c77ca789f099f3d77d4109f6a412cdd

Document added lib and examples file to silence regression warnings.

gs/doc/Develop.htm
gs/doc/Psfiles.htm


2015-07-03 13:25:30 +0100
Chris Liddell <chris.liddell@artifex.com>
95c861c397536f4427297caf88935ef474466f8f

Bug 695475: use gs_snprintf in font serializing

Change to using gs_snprintf() (from gs_sprintf) in the Type 1 and 2 font
serializing code, and if the number is truncated, print a warning (but carry
on).

No cluster differences

gs/base/lib.mak
gs/base/wrfont.c
gs/base/wrfont.h
gs/base/write_t1.c
gs/base/write_t2.c


2015-07-02 15:57:30 +0100
Chris Liddell <chris.liddell@artifex.com>
d8c1bfb119b9a5d44d684227104c01bcdbcea0f5

Remove last vestige of TurboC build

gs/base/turboc.cfg


2015-06-30 08:58:40 +0100
Chris Liddell <chris.liddell@artifex.com>
65a4fa4d6fbd3ab04f565e051d6a7af8f65c0960

Replace strtok()

Add a portable, thread-safe equivalent of strtok() lifted from the Apache
project a tweaked slightly for use in Ghostcript.

Commit apache strtok source "as is"

Rename apache strtok source file to suit GS

Add header for gs_strtok()

First pass at makefile changes for gs_strtok()

Tweak apache strtok() code to work for Ghostscript

Further makefile tweak for gs_strtok

Missing semicolon

Modify code to use gs_strtok() instead of strtok

No cluster differences.

gs/base/gsicc_cache.c
gs/base/gsicc_manage.c
gs/base/gsstrtok.c
gs/base/gsstrtok.h
gs/base/lib.mak
gs/base/string_.h
gs/devices/gdevwpr2.c
gs/psi/dscparse.c
pl/pjparse.c
pl/pllfont.c
pl/plmain.c


2015-06-29 12:05:28 +0100
Chris Liddell <chris.liddell@artifex.com>
b04c259dc71b3c7890e0c3771ee1b8f79519be1e

Replace trio for sprintf

Use code from the Apache project (under Apache License) tweaked to remove
Apache specific dependencies and to better fit our formatting needs.

Cluster differences only due to slight difference in at what point the exponent
notation kicks in.

Add Apache's sprintf implementation "as is"

Rename Apache sprintf source.

Tweak to work outside of Apache

common/msvc_top.mak
common/ugcc_top.mak
config.mak.in
configure.ac
gs/Makefile.in
gs/base/gs.mak
gs/base/gssprintf.c
gs/base/gssprintf.h
gs/base/gxclmem.c
gs/base/lib.mak
gs/base/trio.mak
gs/base/unix-gcc.mak
gs/base/unixansi.mak
gs/base/winlib.mak
gs/configure.ac
gs/psi/msvc.mak
gs/trio/CHANGES
gs/trio/FILES
gs/trio/Makefile.in
gs/trio/README
gs/trio/autogen.sh
gs/trio/compare.c
gs/trio/configure.in
gs/trio/doc/doc.h
gs/trio/doc/doc_dynamic.h
gs/trio/doc/doc_printf.h
gs/trio/doc/doc_register.h
gs/trio/doc/doc_scanf.h
gs/trio/doc/doc_static.h
gs/trio/doc/footer.html
gs/trio/doc/header.html
gs/trio/doc/trio.cfg
gs/trio/doc/trio.css
gs/trio/example.c
gs/trio/html/group___dynamic_strings.html
gs/trio/html/group___printf.html
gs/trio/html/group___scanf.html
gs/trio/html/group___special_quantities.html
gs/trio/html/group___static_strings.html
gs/trio/html/group___user_defined.html
gs/trio/html/index.html
gs/trio/html/modules.html
gs/trio/html/trio.css
gs/trio/install-sh
gs/trio/maketgz
gs/trio/regression.c
gs/trio/strio.h
gs/trio/trio.c
gs/trio/trio.h
gs/trio/triodef.h
gs/trio/trionan.c
gs/trio/trionan.h
gs/trio/triop.h
gs/trio/triostr.c
gs/trio/triostr.h
main/pcl6_gcc.mak
main/pcl6_msvc.mak
xps/xps_msvc.mak


2015-07-02 09:22:08 -0600
Henry Stiles <henry.stiles@artifex.com>
86beea017099fa94f210b8eaa028656c197ce676

Support for Margins on the PCL command line.

pl/plmain.c


2015-07-02 07:43:09 -0600
Henry Stiles <henry.stiles@artifex.com>
c802d7bca87d26fabbc090518e942b2424e1f269

Margins resolution units were not correct for the X11 device.

X11 initializes resolution and margin's resolution to "FAKE_RES" (1152)
at compile time. Upon initialization if the resolution is still
FAKE_RES indicating the resolution wasn't set on the command line or by
parameter setting the code figures out a good resolution by querying X11
screen dimensions. It forgot to set the Margin Resolution which
remained at 1152 dpi.

gs/devices/gdevxini.c


2015-07-02 07:40:11 -0600
Henry Stiles <henry.stiles@artifex.com>
04859e2ea30608d0ae8a4b844dac2f7ea36cbb82

A little better documentation for "MarginsHWResolution".

gs/base/gxdevcli.h


2015-06-30 07:28:35 -0600
Henry Stiles <henry.stiles@artifex.com>
8563e28b346f50cef8ee30dafba8a39b9af55e20

Fix 696039 - Command line option doesn't allow "0" margins.

A parsing error in scanf will not allow parsing floats in the format
%fx%f if the float argument is 0, we now use strtok() to parse the
floats in the format string.

pl/plmain.c


2015-06-29 15:56:39 -0600
Henry Stiles <henry.stiles@artifex.com>
3f39e091c56a8abbe61124a728ab9382b246643b

Fix lacking debug output for the label termination command.

pcl/pgchar.c


2015-06-29 08:39:20 -0600
Henry Stiles <henry.stiles@artifex.com>
07859ace56b3410ac0af31ce1300505e7582d756

Improve the readability of the built-in bitmap patterns. The change has
no effect on program execution.

pcl/pcbiptrn.c


2015-06-30 08:05:14 -0700
Ray Johnston <ray.johnston@artifex.com>
835ce7c78f3e396554dd2b965e41476e1bd72f8d

Coverity ID #95048: Use of 'f' file pointer after freed by freopen.

gs/base/gxclfile.c


2015-06-30 13:53:00 +0100
Ken Sharp <ken.sharp@artifex.com>
2d54c07d327f8d7b3eabc8a15c80127dc847e949

XPS Interpreter - allow for empty remote resource dictionaries

Bug #696061 "conversion of Test.xps fails with segment violation"

If there was no remote resource dictionary, or it was empty, the code
assigned XML data to the dictionary, which would cause a seg fault as the
dictionary pointer was NULL.

Simply check for a NULL dictionary pointer and if found, discard the
'xml' data instead of assigning it to the dictionary.

A similar fix is already present in MuPDF.

xps/xpsresource.c


2015-06-29 18:51:39 -0700
Ray Johnston <ray.johnston@artifex.com>
cf5a15bbc7b932ef4525962f770b1d6126383732

Coverity ID #95083: Uninitialized variable 'code' used if color is not pure

gs/base/gxcmap.c


2015-06-28 19:27:01 +0100
Ken Sharp <ken.sharp@artifex.com>
612f284f7cba5f3abf45b7f572af064cac0d005e

PDF Interpreter - Don't attempt to draw annotations scaled to 0 size

Bug #696051 "Warning only appears with -dTextAlphaBits=4"

This commit does not address the underlying fault. The interpreter/graphics
library behaves differently with TextAlphaBits set and not. This:

/Helvetica findfont 20 scalefont setfont 10 10 moveto (test) show

gives an error with -dTextAlphaBits set, but not when it isn't. The latter
appears to be incorrect.

We work around this in the PDF interpreter by checking the scale factor
(because the actual fault is a /Rect [0 0 0 0]) and if either the x or y
scale is 0, we simply don't draw the annotation.

No differences expected.

gs/Resource/Init/pdf_draw.ps


2015-06-23 15:36:29 +0100
Ken Sharp <ken.sharp@artifex.com>
7e8cd8ff35d36d66a7f5de50c16bcc0a4352777d

Commit f5444527 inadvertently introduced seg faults, fixed here.

gs/devices/vector/gdevpdtd.c


2015-06-23 12:37:29 +0100
Ken Sharp <ken.sharp@artifex.com>
d5287fe7585d7a203656244a72a15cb958cd798d

Coverity ID #94512 copy paste error, x should have been y

gs/devices/vector/gdevpdte.c


2015-06-23 12:14:06 +0100
Ken Sharp <ken.sharp@artifex.com>
f544452718283d4d7122b3c22c1f3991313099ea

Coverity ID #94859 rearrange code to avoid potential NULL pointer dereference

gs/devices/vector/gdevpdtd.c


2015-06-23 12:03:14 +0100
Ken Sharp <ken.sharp@artifex.com>
6b7de65620163f1a92ce42ef787a0ae4b07ecdef

Coverity ID #94702 a missing ',' caused two standard CMap names to be concatenated, which means they were effectively both corrupted.

gs/devices/vector/gdevpdtc.c


2015-06-23 11:44:00 +0100
Ken Sharp <ken.sharp@artifex.com>
83d2eb9128d94aa18fc4f9cc7d0b79e5d53976e5

Coverity ID #94692 the variable 'code1' is pointlessly used to save a
return code. This is no longer needed, so removed.

gs/devices/vector/gdevpdtb.c


2015-06-23 11:29:39 +0100
Ken Sharp <ken.sharp@artifex.com>
3fd5c000705d844ae609945ae82260ccdff58896

Coverity ID #94854, 94855, 94871, 94928 avoid potential array overrun
by using '>=' instead of '>'. In practice this can't happen, because the
enum value 'NUM_RESOURCe_TYPES' isn't used to create or address any actual
resources.

gs/devices/vector/gdevpdfu.c


2015-06-23 08:55:09 +0100
Ken Sharp <ken.sharp@artifex.com>
352a75aaba6804eab50b49e6c574365a83e37c47

Coverity ID #94534 another two ignored returns from gp_fseek_64

gs/devices/vector/gdevpdfu.c


2015-06-23 08:53:13 +0100
Ken Sharp <ken.sharp@artifex.com>
47485417cd9a734d5a7c9951eadcd8d5888ac34b

Coverity ID #94521 fix two more cases of ignored return values from gp_fseek_64

gs/devices/vector/gdevpdfu.c


2015-06-23 08:50:50 +0100
Ken Sharp <ken.sharp@artifex.com>
ebc78b1157d2393d5996425c1c2bd06b383db478

Coverity ID #94509 check and action return value from gp_fessk_64

gs/devices/vector/gdevpdfu.c


2015-06-23 08:47:45 +0100
Ken Sharp <ken.sharp@artifex.com>
867a7589bd1006ba9d1f0866e1ccf2fb87094c49

Initialise variable to silence compiler warning

gs/devices/vector/gdevpdfm.c


2015-06-14 10:22:12 +0100
Chris Liddell <chris.liddell@artifex.com>
d16982fb1078ecfe371f15df86c63f4649d70fdd

Bug 696034: Add the correct updated font files

I mistakenly committed the wrong font update (ones without the extra cyrillic
and greek glyphs), this corrects the mistake.

Cluster differences expected....

gs/Resource/Font/NimbusMon-Bol
gs/Resource/Font/NimbusMon-BolObl
gs/Resource/Font/NimbusMon-Obl
gs/Resource/Font/NimbusMon-Reg
gs/Resource/Font/NimbusMono-Bold
gs/Resource/Font/NimbusMono-BoldOblique
gs/Resource/Font/NimbusMono-Oblique
gs/Resource/Font/NimbusMono-Regular
gs/Resource/Font/NimbusRom-Ita
gs/Resource/Font/NimbusRom-Med
gs/Resource/Font/NimbusRom-MedIta
gs/Resource/Font/NimbusRom-Reg
gs/Resource/Font/NimbusRomNo9L-Med
gs/Resource/Font/NimbusRomNo9L-MedIta
gs/Resource/Font/NimbusRomNo9L-Reg
gs/Resource/Font/NimbusRomNo9L-RegIta
gs/Resource/Font/NimbusSan-Bol
gs/Resource/Font/NimbusSan-BolIta
gs/Resource/Font/NimbusSan-Ita
gs/Resource/Font/NimbusSan-Reg
gs/Resource/Font/NimbusSanL-Bol
gs/Resource/Font/NimbusSanL-BolIta
gs/Resource/Font/NimbusSanL-Reg
gs/Resource/Font/NimbusSanL-RegIta
gs/Resource/Init/Fontmap.GS
gs/psi/psromfs.mak


2015-06-23 08:24:33 +0100
Chris Liddell <chris.liddell@artifex.com>
663d2c237506045862a4c8d13cbea26c534dc893

Quash some compiler warnings.

No cluster differences

gs/base/fapi_ft.c


2015-06-22 08:02:38 +0100
Chris Liddell <chris.liddell@artifex.com>
e30f3e82b017756428974be81c08fb212f28673e

Coverity #94836: remove dead code.

No cluster diffs

gs/base/fapi_ft.c


2015-06-19 16:00:58 +0100
Chris Liddell <chris.liddell@artifex.com>
078079b7a857c5d640854fd1a06578675d9adaab

Coverity ID #94816: initialise pointer to NULL.

Benign: initialise the ft_stream pointer to NULL when we're not opening a stream
based font in freetype.

No cluster differences.

gs/base/fapi_ft.c


2015-06-19 15:57:55 +0100
Chris Liddell <chris.liddell@artifex.com>
e0778e3f7815dd4a27b275772560dc450d5e2bc3

Coverity ID# 94753: clean up error handling.

Move handling an out of memory condition to avoid a potential null pointer
dereference.

No cluster differences.

gs/base/fapi_ft.c


2015-06-19 15:55:28 +0100
Chris Liddell <chris.liddell@artifex.com>
81137c03db99736261862fb2745e8e989983e859

Coverity: ID #94572: NULL pointer dereference

In the event we have no i/o device, throw an error. Avoids a possible NULL
pointer dereference.

No cluster differences

gs/base/fapi_ft.c


2015-06-19 15:45:20 +0100
Chris Liddell <chris.liddell@artifex.com>
9e264c139aa99ad827171e65ebd802d55cb92dbe

Coverity ID #94675, #94731, #94772, #94800

Tidy up conditionals where one condition cannot occur at that point (mostly
benign copy and paste mistakes).

Restore a locally changed value in an external object before returning.

No cluster differences.

gs/base/gxfapi.c


2015-06-23 08:21:19 +0100
Ken Sharp <ken.sharp@artifex.com>
134424c1fe1b163e3bd3e230b6b2acd217843d9c

The default case lacked a break. I suspect this is a hold over from an
older set of code where it may have made sense, it doesn't now.

gs/devices/vector/gdevpdfp.c


2015-06-23 08:20:02 +0100
Ken Sharp <ken.sharp@artifex.com>
500f1e8f1436ac82c642c325d0f0e67aabc9cef9

Coverity ID #94701 two comparisons against ccs_sRGB. We really wanted to
test for RGB or sRGB here, so one of them should have been ccs_RGB. Fixed

gs/devices/vector/gdevpdfp.c


2015-06-22 14:59:16 +0100
Ken Sharp <ken.sharp@artifex.com>
05e65d67fcf33e8223bacfe7c060380ba291c07c

change missed in previous commit

gs/devices/vector/gdevpdfo.c


2015-06-22 14:57:06 +0100
Ken Sharp <ken.sharp@artifex.com>
94105d6b7273c83e24f8561f4c086657fa071219

coverity ID #94518 more checks on return code form gp_fseek_64

gs/devices/vector/gdevpdfo.c


2015-06-22 14:39:35 +0100
Ken Sharp <ken.sharp@artifex.com>
a89d5988026eeb1477bd9a2ec8b463fc4596fa21

Coverity ID #94510 add some checks to the return from gp_fseek_64

gs/devices/vector/gdevpdfo.c


2015-06-22 14:18:49 +0100
Ken Sharp <ken.sharp@artifex.com>
30f0a322ea0643366a93274e03dc80e226a7b822

Coverity ID #94648, ensure a pointer cannot be dereferenced if NULL. In
practice it can't happen because we check the size of the data firs, and the
size is initialised to 0. But it is slightly safer to be certain.

gs/devices/vector/gdevpdfm.c


2015-06-22 13:51:57 +0100
Ken Sharp <ken.sharp@artifex.com>
0f7ab3e067a5e8b8434312ca5ce364869288eeec

Coverity ID #94530 check and action a return code.

gs/devices/vector/gdevpdfm.c


2015-06-21 16:28:42 +0100
Ken Sharp <ken.sharp@artifex.com>
4d4a868350c8ec82b8ce42100cd03aef92e1d40a

Coverity ID #94974, the variable can never be uninitialised, but that's
not evident because it depends on the switch statement and there is no
default case coded because we cater for all possibilities.

Add a memset to the default case just to set the memory to NULL, it will
never be called.

gs/devices/vector/gdevpdfk.c


2015-06-21 16:24:01 +0100
Ken Sharp <ken.sharp@artifex.com>
7427b67964490963ce82076a0cd4ff334d03ad62

Coverity ID #94931 increase buffer to 256 so that array bounds check is correct.

gs/devices/vector/gdevpdfj.c


2015-06-21 16:16:59 +0100
Ken Sharp <ken.sharp@artifex.com>
a8eb47a837b31ce723e76c98f122ba834b7380d0

Coverity ID #94678 guard a potential null pointer dereference with a check.

gs/devices/vector/gdevpdfi.c


2015-06-21 13:51:56 +0100
Ken Sharp <ken.sharp@artifex.com>
f629df898a59145db4b8b60447ba46671a3bf76e

dummy

gs/devices/vector/gdevpdfg.c


2015-06-21 13:36:46 +0100
Ken Sharp <ken.sharp@artifex.com>
010b0dc68542a17e0309f230ee071ca0a6f2bb84

Coverity ID #95002 another couple of pointless NULL pointer checks

gs/devices/vector/gdevpdfg.c


2015-06-21 13:30:40 +0100
Ken Sharp <ken.sharp@artifex.com>
b0f10e57dcd17c31a8754eaca38ba49a4496f52d

Coverity ID #94908 pointless check of NULL Pointer, removed.

gs/devices/vector/gdevpdfg.c


2015-06-21 13:23:38 +0100
Ken Sharp <ken.sharp@artifex.com>
6482eded57246b1ddebe590d6874a01220477d16

Coverity ID #94680, the previous code checked the incorrect returned value,
leading to dead code.

Coverity ID #94786, this is spurious, we check the colour space is one of
Gray, RGB or CMYK, then switch on the number of components (1, 3, 4) and set
a variable. This causes a complaint that the variable 'command' could be
dereferenced when NULL. In practice this is impossible.

gs/devices/vector/gdevpdfg.c


2015-06-19 15:51:42 +0100
Ken Sharp <ken.sharp@artifex.com>
34aa319c5d592ffba5d814aef30e67f3aef55adb

Coverity ID #94561 its technically possible to get into new_pdf_reset_color
with pis being NULL, if we don't have a high level colour imager state for a stroke.
In practice I don't believe its possible to have a pattern colour space for
a stroke without an image state for a high level colour, but its wise to
check before dereferencing.

gs/devices/vector/gdevpdfg.c


2015-06-19 15:44:52 +0100
Ken Sharp <ken.sharp@artifex.com>
c82b4be5033763c0a5fb4b46e5f5628b6703e7f3

Coverity ID #94544, should have been assigning to y, not x

gs/devices/vector/gdevpdfd.c


2015-06-19 11:25:59 +0100
Chris Liddell <chris.liddell@artifex.com>
75c8ee6f7e8e3d87033a5d1055d66237ed28b387

Coverity: don't ignore error return.

No cluster differences.

gs/base/fapi_ft.c


2015-06-19 11:18:32 +0100
Chris Liddell <chris.liddell@artifex.com>
3adab1a6e20eebc004e032c50f017b176e5b3aeb

Coverity: move assignment to before the return

Resetting a pointer to NULL was after the function returned.

No cluster differences.

gs/psi/zfile.c


2015-06-19 11:10:03 +0100
Chris Liddell <chris.liddell@artifex.com>
d366dc9568f3bd2da06b57c7b0776b299200861a

Coverity: add initializer and check some return codes.

In truth, these were benign - we couldn't get to the ps_get_glyphname_or_cid()
call if the dictionary lookups would fail, and the possibly "uninitialized
variable" also couldn't happen, as one of the routes through the code that sets
it would have to be traversed with a valid font, and if the font were not valid
we'd never get to that function....

No cluster differences.

gs/psi/zfapi.c


2015-06-19 11:02:04 +0100
Chris Liddell <chris.liddell@artifex.com>
24f0b7d55b89b30d64623e03269027020628a432

Coverity: change parameter from explicit array to ptr.

gs_type42_default_get_metrics() takes either a 4 element or 8 element float
array depending on metrics requested, but the parameter was explicitly declared
as a four element array.

No cluster diffs.

gs/base/gstype42.c


2015-06-19 14:30:25 +0100
Ken Sharp <ken.sharp@artifex.com>
1e7db1c8bc26d57740b6ce4e6bcb2a154de2952a

Add a pointer cast to silence a Cppcheck warning (can't be a new warning
but it just popped up).

gs/devices/vector/gdevpdfm.c


2015-06-19 14:29:53 +0100
Ken Sharp <ken.sharp@artifex.com>
c458209c7de440ce65b1ae48f982635d2f1cf2ac

Coverity ID #94519, #94538 check the return value from gp_fseek_64.

Coverity ID #94813, check return value from fread and return error if failed.

Coverity ID #95042, add a missing check on return value of rewrite_object

gs/devices/vector/gdevpdf.c


2015-06-19 10:18:17 +0100
Chris Liddell <chris.liddell@artifex.com>
d64555d5f1180ee84875c7031d5acc3596397c24

Bug 696037: resolve issue with named pipes on Windows

The stat() call does not work for named pipes on Windows.

Move around the order of tests in lib_file_open_search_with_no_combine() so
it works with names pipes.

The way lib_file_open_search_with_no_combine() works is that we have a list of
paths to search, and list of paths from which we are allowed to open files.

If a file does not exist in one path from our search list, we continue
searching.

If, on the other hand, the file does exist, but is not in a path we are
permitted to use files from, we have to throw an invalidaccess error.

Previously, we'd stat() the file, then consult our allowed paths, then open the
file - taking appropriate alternative action if any of those stages failed.

Now, we consult the permitted paths first, and if that fails, only then do we
call stat() to decide whether to throw an error, or continue searching.

This should work correctly with Windows named pipes, as the names are always of
the form "\\\\.\\pipe\\..." (local) or "\\ServerName\pipe\..." (remote) so in
both cases the leading character being "\" will identify it as an absolute path
and those are always allowed.

No cluster differences.

gs/psi/zfile.c


2015-06-19 10:36:29 +0100
Ken Sharp <ken.sharp@artifex.com>
106be79bed699548c6094a0ffa98d73be3e32ce8

Split previous initialisation so that we don't end up assigning an integer
to a pointer (causing a new warning...)

gs/devices/vector/gdevpdfm.c


2015-06-19 08:06:03 +0100
Ken Sharp <ken.sharp@artifex.com>
c46817a77dc2fd72ea2d1c16e140fba607a8787c

Check before dereferencing a pointer, silences Coverity warning.

gs/devices/vector/gdevpdfv.c


2015-06-19 08:04:50 +0100
Ken Sharp <ken.sharp@artifex.com>
997591ab50521899870075d3f85f1c7aef1ea81b

Initialise 'Stack' memory to silence a Coverity warning. bounds check an
array access to ensure we don't read off the bottom end.

gs/devices/vector/gdevpsf1.c


2015-06-19 08:03:47 +0100
Ken Sharp <ken.sharp@artifex.com>
e5de820e5fca5cc836c4bf7099f86eb0ab5299ae

Silence a Coverity warning by initialising some variables

gs/devices/vector/gdevpdfm.c


2015-06-19 08:03:16 +0100
Ken Sharp <ken.sharp@artifex.com>
74b3ed15d3c03f9486fa829ba9fd14d26c5eb582

Check a return value to silence a Coverity warning
Should this actually ever fail we'd write an invalid PDF file anyway.

gs/devices/vector/gdevpdf.c


2015-06-19 08:02:02 +0100
Ken Sharp <ken.sharp@artifex.com>
223c7994f8caa0500dc345ff86170d55776fc222

Spotted by Coverity, fix parentheses for checking file is writeable

gs/base/ramfs.c


2015-06-16 18:32:47 +0100
Robin Watts <robin.watts@artifex.com>
9b4c78e969e75d8a0a9490511af07bb41cc26431

Bug 695234: Fix valgrind warnings with fuzzed file.

The file was reported as causing SEGVs, but I cannot reproduce this.
Possibly the SEGV was fixed by Chris' change for bug 694205.

gs/base/gxfill.c


2015-06-15 17:30:39 +0100
Robin Watts <robin.watts@artifex.com>
b83b92758672b1ea690d4b979afaf07cf251b11f

Bug 695348: Proper fix for avoiding SEGV in interpolated scalar.

Avoid using the interpolated scaler for images where the
calculations have overflowed.

gs/base/gxiscale.c


2015-06-16 10:13:47 +0100
Ken Sharp <ken.sharp@artifex.com>
72ca9b670f70cfaad1a299f891d03a313143cc3c

PDF interpreter - further work to handle illegal operations in text blocks

Bug #696017 "Portions of page missing"

The specimen file contains numerous operations illegally inside text blocks,
previously we fixed this for nested text blocks and more recently for images
inside text blocks. However this file also has stroke operations inside text
blocks (also illegal).

Here we handle this by redefining the path construction operators so that
they check for the existence of a SavedTextMatrix and use that instead of
the CTM if it is present. This has some consequences; we can't do this for
pattern PaintProcs or the pattern will be incorrectly defined, and the flag
we were previously using (presence of TextSavedMatrix in currentdict) can't
be used as that isn't present during the execution of a PaintProc. So we
have to look at the current definition of the marking operations (we choose
to just use /m for brevity) and take action based upon that. We always set
the 'normal' marking ops for a PaintProc, and if we are in a text block
we switch the ops back again after running the PaintProc.

No differences (except the obvious expected one in Bug696017.pdf)

gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_ops.ps


2015-06-15 16:49:51 +0100
Robin Watts <robin.watts@artifex.com>
4191a9eb66adffbf6ae77c4f89f6dbbffc847ed9

Revert "Bug 695348: Avoid SEGV in interpolated scaler."

This reverts commit 78b27bf3e1a70699296f41442e767b1d04492b1c.

I forgot a ' < 0' in one of the tests. This returns the tests to
sanity to let me check the impact of the proper fix correctly.

gs/base/gxipixel.c
gs/base/gxiscale.c


2015-06-15 13:51:14 +0100
Robin Watts <robin.watts@artifex.com>
78b27bf3e1a70699296f41442e767b1d04492b1c

Bug 695348: Avoid SEGV in interpolated scaler.

Don't use interpolated scaler if calculations have overflowed.

gs/base/gxipixel.c
gs/base/gxiscale.c


2015-06-12 19:54:41 +0100
Robin Watts <robin.watts@artifex.com>
1572afcd641ed003150eec439c7ca16145cd0888

Bug 695954: Add gp_stat function.

gp_stat just calls stat, except on windows, where it converts from
UTF8 to unicode and calls _wstat.

gs/base/gp.h
gs/base/gp_macio.c
gs/base/gp_mswin.c
gs/base/gp_os2fs.c
gs/base/gp_unifs.c
gs/base/gp_vms.c
gs/base/gsiodev.c
gs/base/stat_.h


2015-06-11 12:18:52 +0100
Ken Sharp <ken.sharp@artifex.com>
908a9083697c8d41057110f30adf7a6c6b6eb46b

pdfwrite - fix ToUnicode emission

Bug #696021 "commit 24c562(fix for #692119) causes G2U mapping is lost in CIDFont"

Despite the bug title, it was in fact commit
1be6f4e4084443772b928510fb7ebce71572ea10 which broke the handling of the
code created by PSCRIPT5.DLL. The windows printing system emits a
GlyphNames2Unicode dictionary which you would expect to contain names and
Unicode values, but in fact contains character codes and Unicode values.

Sometimes we have the Character code to CID mapping being an identity, and
sometimes we don't. So we need to check both of these, which we can conveniently
do by lying to the decode_glyph procedure and pretending we are not a CIDFont.
We don't generally want to do this though, so we only do it if the CID and
character code differ. I haven't found a case where a PDF input file has a
differing CID and character code *and* fails decode_glyph with a CID, but
I suspect this may be possible, in which case we'll get a garbage ToUnicode
CMap, but it won't be worse than it was before

I think the code originally supplied by the user to fix this bug is dangerous
(may produce incorrect results with PDF input files) and so have not entirely
adopted it but created our own resolution.

No differences expected.

gs/devices/vector/gdevpdtc.c


2015-06-08 03:15:26 +0100
Chris Liddell <chris.liddell@artifex.com>
2395efe0bb6ee1e054ace4866a3c8dc4afb56c60

Use an enum for error codes common to all modules

No cluster differences.

gs/base/gserrors.h


2015-06-09 12:36:59 +0100
Chris Liddell <chris.liddell@artifex.com>
4da046f4dff81fdb6d8b7fdf5d114187d4782617

Bug 695810: improve/expand tests for memory alignment

Add a cross platform test for minimum memory alignment in configure. Make it
apply for the whole of the build (not just LCMS). And allow it to be
overridden at the command line.

No cluster diffs

configure.ac
gs/Makefile.in
gs/base/genarch.c
gs/configure.ac


2015-06-10 09:29:45 +0100
Ken Sharp <ken.sharp@artifex.com>
dbfd36b313eb9866300d5f7daef1249831332acf

PDF interpreter - ignore broken SMask in ExtGState

Bug #696027 "Blank page instead of expected output"

The PDF file is invalid, it has an ExtGState with a SMask dictionary, the
SMask does not contain a /Group, which is required and the dictionary is
unusable without it.

This commit wraps the execution of SMask in a stopped so that if it fails
we can raise a warning and continue with the ExtGState, effectively ignoring
the invalid SMask.

This produces a small progression in tests_private/pdf/sumatra/broken_xobject_messing_up_clip_stack.pdf
that particular file is so damaged even Acrobat won't open it, but a
progression is nice anyway.

gs/Resource/Init/pdf_draw.ps


2015-06-09 09:56:16 +0100
Ken Sharp <ken.sharp@artifex.com>
7e05f9d78f63b2a84339f1f39505a786fed75599

Remove 2 unused variables to silence compiler warnings.

gs/devices/vector/gdevpdfo.c


2015-06-09 09:20:10 +0100
Ken Sharp <ken.sharp@artifex.com>
cb48631e7254e0843a08f075777cbecb43947823

pdfwrite - write encrypted strings in Dests tree if protected PDF output

Bug #695992

We were forced to stop using names when creatng a Dests tree (instead of
an array), even though it seems legal, because Acrobat didn't like it.

However, I forgot to take account of password protected PDF files, which
require us to encrypt strings. Encryption is applied in this commit if
it is required.

No differences expected.

gs/devices/vector/gdevpdfo.c


2015-06-04 16:30:03 +0100
Chris Liddell <chris.liddell@artifex.com>
640801c0fd5527c7f183549df4fd2da365e427d4

Consolidate almost all error codes into the graphics library

Do away with the separate/duplicate error code definitions in the Postscript
interpreter and in the graphics library. Also, where possible, do the same
for PCL.

The exception is the PXL code which has errors codes entirely of its own -
as unpleasant as that is, it would require rather more invasive changes to
have PXL use the common error codes. Possibly something to consider for a
future commit.

No cluster differences.

gs/base/gserrors.h
gs/base/stream.h
gs/psi/apitest.c
gs/psi/dmmain.c
gs/psi/dpmain.c
gs/psi/dwmain.c
gs/psi/dwmainc.c
gs/psi/dxmain.c
gs/psi/dxmainc.c
gs/psi/estack.h
gs/psi/gs.c
gs/psi/gsdll.c
gs/psi/gserver.c
gs/psi/ialloc.c
gs/psi/iapi.c
gs/psi/iapi.h
gs/psi/ibnum.c
gs/psi/icontext.c
gs/psi/idict.c
gs/psi/idict.h
gs/psi/idparam.c
gs/psi/ierrors.h
gs/psi/igstate.h
gs/psi/iinit.c
gs/psi/imain.c
gs/psi/imain.h
gs/psi/imainarg.c
gs/psi/iname.c
gs/psi/inobtokn.c
gs/psi/int.mak
gs/psi/interp.c
gs/psi/iparam.c
gs/psi/iparam.h
gs/psi/iplugin.c
gs/psi/ireclaim.c
gs/psi/isave.c
gs/psi/iscan.c
gs/psi/iscanbin.c
gs/psi/iscanbin.h
gs/psi/iscannum.c
gs/psi/istack.c
gs/psi/istack.h
gs/psi/iutil.c
gs/psi/iutil.h
gs/psi/iutil2.c
gs/psi/ivmspace.h
gs/psi/opcheck.h
gs/psi/oper.h
gs/psi/ostack.h
gs/psi/zalg.c
gs/psi/zarith.c
gs/psi/zarray.c
gs/psi/zbfont.c
gs/psi/zbseq.c
gs/psi/zcfont.c
gs/psi/zchar.c
gs/psi/zchar1.c
gs/psi/zchar32.c
gs/psi/zchar42.c
gs/psi/zcharout.c
gs/psi/zcharx.c
gs/psi/zcid.c
gs/psi/zcidtest.c
gs/psi/zcie.c
gs/psi/zcolor.c
gs/psi/zcontext.c
gs/psi/zcontrol.c
gs/psi/zcrd.c
gs/psi/zdevice.c
gs/psi/zdevice2.c
gs/psi/zdict.c
gs/psi/zdouble.c
gs/psi/zdpnext.c
gs/psi/zdps.c
gs/psi/zdps1.c
gs/psi/zdscpars.c
gs/psi/zfaes.c
gs/psi/zfapi.c
gs/psi/zfarc4.c
gs/psi/zfcid.c
gs/psi/zfcid0.c
gs/psi/zfcid1.c
gs/psi/zfcmap.c
gs/psi/zfdctd.c
gs/psi/zfdcte.c
gs/psi/zfdecode.c
gs/psi/zfile.c
gs/psi/zfile1.c
gs/psi/zfileio.c
gs/psi/zfilter.c
gs/psi/zfilter2.c
gs/psi/zfilterx.c
gs/psi/zfimscale.c
gs/psi/zfjbig2.c
gs/psi/zfont.c
gs/psi/zfont0.c
gs/psi/zfont1.c
gs/psi/zfont2.c
gs/psi/zfont42.c
gs/psi/zfontenum.c
gs/psi/zform.c
gs/psi/zfproc.c
gs/psi/zfrsd.c
gs/psi/zfsample.c
gs/psi/zfunc.c
gs/psi/zfunc0.c
gs/psi/zfunc3.c
gs/psi/zfunc4.c
gs/psi/zgeneric.c
gs/psi/zgstate.c
gs/psi/zht.c
gs/psi/zht1.c
gs/psi/zht2.c
gs/psi/zicc.c
gs/psi/zimage.c
gs/psi/zimage3.c
gs/psi/ziodev.c
gs/psi/ziodev2.c
gs/psi/ziodevs.c
gs/psi/ziodevsc.c
gs/psi/zmath.c
gs/psi/zmatrix.c
gs/psi/zmedia2.c
gs/psi/zmisc.c
gs/psi/zmisc1.c
gs/psi/zmisc2.c
gs/psi/zpacked.c
gs/psi/zpaint.c
gs/psi/zpath1.c
gs/psi/zpcolor.c
gs/psi/zpdf_r6.c
gs/psi/zpdfops.c
gs/psi/zshade.c
gs/psi/zstack.c
gs/psi/zstring.c
gs/psi/ztoken.c
gs/psi/ztrans.c
gs/psi/ztrap.c
gs/psi/ztype.c
gs/psi/zupath.c
gs/psi/zusparam.c
gs/psi/zutf8.c
gs/psi/zvmem.c
gs/psi/zvmem2.c
gs/psi/zwinutf8.c
pcl/pgchar.c
pcl/pgconfig.c
pcl/pglabel.c
pcl/pglfill.c
pcl/pgmand.h
pcl/pgparse.c
pcl/pgvector.c


2015-06-06 20:07:10 +0100
Ken Sharp <ken.sharp@artifex.com>
a6d05fcee5521bc410068b16925c36476f207eab

pdfwrite - fix consecutive CIE colour usage

Bug #695847 " colors in CIE color model are not converted correctly to PDF"

CIE colours cannot be represented directly in a PDF file, they *must* be
converted into an ICCBased colour space. If the colour conversion strategy
was LeaveColorUnchanged then the first usage of a colour in a CIEBased
colour space was correctly convrted, and the colour components rescaled,
but if the job then used another, different, colour in the same colour
space then the components were written out unscaled.

This commit forces colours in a CIEBased space to always be rescaled.

This gives one small progression in the test suite (09-31.ps) and some
slight colour differences in a further 7 files.

gs/devices/vector/gdevpdfg.c


2015-06-05 23:59:53 +0100
Ken Sharp <ken.sharp@artifex.com>
3a54125ff9225876f56e812f45bfc38cb2861c4b

PDF Interpreter - fix a problem with DecodeParms

Bug #696019 "- Regression: reading PDF file produces error starting with ddaea8157085f4efb227e78326dd739d59493b97"

There was a problem whe we had an image dictionary with a /Filter, which was
not an array. We consumed the image and stream dictionaries which led to an
error.

This commit correctly updates and preserves the dictionaries.

No differences expected.

gs/Resource/Init/pdf_draw.ps


2015-06-05 12:09:55 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
4752fbce72100255089a5251b741711eab038ea0

Clarified comment re. default PCL HW margins in pcl/pcpage.c.

pcl/pcpage.c


2015-06-04 11:17:34 -0700
Robin Watts <Robin.Watts@artifex.com>
70242e40c8b12024f517155176cd81bf62bb932e

MSVC: Ensure that language switch still build on windows.

We were a) not linking in the right msprinter device (XPSPrint
missing), and b) not linking in the lib that XPSPrint needed.

gs/base/msvctail.mak
language_switch/pspcl6_msvc.mak


2015-06-04 11:14:56 -0700
Robin Watts <Robin.Watts@artifex.com>
07c977b5d7f586758143afa07bde29d9fe9eaede

MSVC Makefile sanitisation: Pass PGMFILES etc in debug call

In the recursive make call done for debug builds, we pass
BUILD_SYSTEM. If we're going to pass BUILD_SYSTEM, we must
pass PGMFILES and PGMFILESx86 too, as these will not get
set if BUILD_SYSTEM is already set.

gs/psi/msvc.mak


2015-06-04 13:51:38 +0100
Robin Watts <Robin.Watts@artifex.com>
d3dd0d208955d1368270e1139178bc6776e0574e

Windows display builds: set app as being dpi aware.

This avoids horrible screen scaling.

gs/psi/dwmain.c
gs/psi/dwmainc.c
pl/dwmainc.c


2015-05-28 09:40:41 +0100
Ken Sharp <ken.sharp@artifex.com>
32fc208587c2c8e6d2eca660ed0c84bdc6d799cd

Bug #696009 "File doc/current/Install.htm and Windows 95"

The last version of Ghostscript which actually installed (using our installer)
on Windows 95 was apparently 8.60, the documentation said 8.71.

gs/doc/Install.htm


2015-05-28 09:38:11 +0100
Ken Sharp <ken.sharp@artifex.com>
be72694a3cac0aa72c0843334e7f1afdabbddc7a

Digitally sign the 'ghostscript printer' file ghostpdf.inf

Recent versions (8+) of Windows make it very difficult to install a device
whose driver is not signed. While the ghostpdf.inf file isn't really part
of Ghostscript we have had enquiries about producing s signed version. Now
that we have our own certificate, this is possible and is done here.

This should now install without problems on WIndows 8 and with fewer warnings
from UAC on Vista and Windows 7.

gs/lib/ghostpdf.README
gs/lib/ghostpdf.cat
gs/lib/ghostpdf.inf


2015-05-26 16:44:56 +0100
Chris Liddell <chris.liddell@artifex.com>
46cbd27208a84296d7bda96bf24b83ec0c084b57

Bug 694549: make optimisation more robust.

And optimisation to reduce load on the memory manager and garbage collector
could end up dumping PS refs in a chunk not marked as containing refs,
potentially resulting in refs being mis-handled during save/restore.

No cluster differences, but should stop Bug688845.eps seg faulting/erroring out

gs/psi/ialloc.c


2015-05-25 10:45:47 -0700
Ray Johnston <ray.johnston@artifex.com>
ef0c86cbf991166924c84657eac90ca357457697

Disable fast threhsold halftoning because it doesn't match HT tiling.

This was discovered while working on fixing a bug in the threshold
array generation (bug 695929). The 'off' offset causes gray shade
differences, and the t_level_adjust, delta and delta_sum logic is
broken for num_levels > 256.

gs/base/gxht_thresh.h


2015-05-23 18:08:57 -0300
Till Kamppeter <till.kamppeter@gmail.com>
d73a3420ad559a527fd0ee94ddb3a37620933a16

"cups"/"pwgraster" output devices: Added support for the color spaces
18 (SGray), 19 (SRGB), and 20 (Adobe RGB).

Note that this is not a full implementation in terms of color
management. The implementation is done by simply using the most
similar of the existing color spaces, simple grayscale (0) for SGray
and RGB (1) for SRGB and Adobe RGB.

This prevents Ghostscript from crashing and produce an output as close
as possible to the desired when these new color spaces are requested.

TODO: Proper color management for the SGray, SRGB, and Adobe RGB
output.

gs/cups/gdevcups.c


2015-05-21 21:53:25 +0100
Chris Liddell <chris.liddell@artifex.com>
668406a56eb351bf07fe3b5ec1be7bfc89cf4d77

Bug 696005: handle indirect objs in image parameters

When we round and convert to integer the height parameter in an image (to handle
the parameter being a real rather than integer, it needs to account for the
value being an indirect object.

No cluster differences.

gs/Resource/Init/pdf_draw.ps


2015-05-21 12:48:31 +0100
Chris Liddell <chris.liddell@artifex.com>
30d3d658ddc70e070e915995e072eb2315942619

Make use of revised endian checks in LCMS2.

No cluster differences

configure.ac
gs/configure.ac


2015-05-21 12:40:07 +0100
Chris Liddell <chris.liddell@artifex.com>
17ee8f214fc2621c594efcdb898756b3b8ff649a

Bug 695544: Simplify/Improve endian decisions in lcms2.h

Firstly, protect the endian decisions in lcms2.h so that settings given on the
compiler command line are not silently overridden. Thus being set explicitly
gets the highest priority.

Secondly, use the endianness detected by the configure script, and remove the
complex and error prone stuff for PPC platforms from lcms2.h. Thus the endianess
from configure gets second highest priority.

Thirdly, if neither of the above are set, fall back to some simple (and long
standing) platform/compiler specific tests. These should rarely, if ever, come
into play in a "normal" build for a "normal" Unix-like system.

Submitted and committed upstream:
https://github.com/mm2/Little-CMS/commit/6e33faab

No cluster differences.

gs/lcms2/include/lcms2.h


2015-05-20 17:54:21 +0100
Chris Liddell <chris.liddell@artifex.com>
e2a659fd03505668929eb0264a97e959fc722eb9

Fix comment regarding FAPI, UFST and Freetype

No cluster differences

gs/Makefile.in


2015-05-19 15:42:12 +0100
Chris Liddell <chris.liddell@artifex.com>
f831cdfd7909bb1bd1feabb12311ffed1afd7c03

Fix compiler warning unsigned/signed comparison

gs/base/gp_unifs.c


2015-05-19 15:38:27 +0100
Chris Liddell <chris.liddell@artifex.com>
d81f899051cb374faa1da265a41c3eec899a36a6

Update to libjpeg 9a

gs/jpeg/Makefile.am
gs/jpeg/Makefile.in
gs/jpeg/README
gs/jpeg/aclocal.m4
gs/jpeg/ansi2knr.1
gs/jpeg/ansi2knr.c
gs/jpeg/ar-lib
gs/jpeg/change.log
gs/jpeg/cjpeg.1
gs/jpeg/cjpeg.c
gs/jpeg/compile
gs/jpeg/config.guess
gs/jpeg/config.sub
gs/jpeg/configure
gs/jpeg/configure.ac
gs/jpeg/depcomp
gs/jpeg/djpeg.1
gs/jpeg/djpeg.c
gs/jpeg/filelist.txt
gs/jpeg/install-sh
gs/jpeg/install.txt
gs/jpeg/jcapistd.c
gs/jpeg/jcarith.c
gs/jpeg/jccolor.c
gs/jpeg/jcdctmgr.c
gs/jpeg/jchuff.c
gs/jpeg/jcinit.c
gs/jpeg/jcmainct.c
gs/jpeg/jcmarker.c
gs/jpeg/jcmaster.c
gs/jpeg/jconfig.cfg
gs/jpeg/jconfig.txt
gs/jpeg/jconfig.vc
gs/jpeg/jcparam.c
gs/jpeg/jctrans.c
gs/jpeg/jdapimin.c
gs/jpeg/jdapistd.c
gs/jpeg/jdarith.c
gs/jpeg/jdatadst.c
gs/jpeg/jdcolor.c
gs/jpeg/jddctmgr.c
gs/jpeg/jdhuff.c
gs/jpeg/jdinput.c
gs/jpeg/jdmainct.c
gs/jpeg/jdmarker.c
gs/jpeg/jdmaster.c
gs/jpeg/jdmerge.c
gs/jpeg/jerror.c
gs/jpeg/jerror.h
gs/jpeg/jfdctint.c
gs/jpeg/jidctint.c
gs/jpeg/jmemmgr.c
gs/jpeg/jmorecfg.h
gs/jpeg/jpegint.h
gs/jpeg/jpeglib.h
gs/jpeg/jpegtran.1
gs/jpeg/jpegtran.c
gs/jpeg/jversion.h
gs/jpeg/libjpeg.map
gs/jpeg/libjpeg.txt
gs/jpeg/makefile.ansi
gs/jpeg/makefile.bcc
gs/jpeg/makefile.dj
gs/jpeg/makefile.manx
gs/jpeg/makefile.mc6
gs/jpeg/makefile.mms
gs/jpeg/makefile.sas
gs/jpeg/makefile.unix
gs/jpeg/makefile.vc
gs/jpeg/makefile.wat
gs/jpeg/missing
gs/jpeg/rdjpgcom.1
gs/jpeg/structure.txt
gs/jpeg/testimg.bmp
gs/jpeg/testimg.ppm
gs/jpeg/transupp.c
gs/jpeg/transupp.h
gs/jpeg/usage.txt


2015-05-19 11:03:04 -0700
Ray Johnston <ray.johnston@artifex.com>
22c1f418a37ccbb31aaf2910cf7926ce85bf8df0

Fix some compiler warnings. Thanks to Robin for spotting these.

Note change to use _fstat64 to allow for large file sizes and to get
rid of warnings. Fixed use of QueryPerformance functions (Windows).
Fix a wrong cast in cmd_drawing_color_usage.

gs/base/gp_mswin.c
gs/base/gp_win32.c
gs/base/gxclpath.c


2015-05-19 12:27:36 -0700
Michael Vrhel <michael.vrhel@artifex.com>
2c10206487eb9aa4623395148fa4b393b95af8ce

Add in some error checking during ICC profile creation.

Thanks to Tim Waugh for catching one of these (bug 695474)

gs/base/gsciemap.c
gs/base/gsicc_manage.c
xps/xpscolor.c
xps/xpsimage.c


2015-05-19 09:59:31 -0700
Michael Vrhel <michael.vrhel@artifex.com>
0309d66cc63c8ebfed8b8aa301d8c819b469dd63

Do not embed ICC profiles in JPEG, TIFF or PNG when -dUseFastColor is specified

A reasonable request in bug 695584

gs/devices/gdevjpeg.c
gs/devices/gdevpng.c
gs/devices/gdevtifs.c


2015-05-14 15:33:03 +0100
Ken Sharp <ken.sharp@artifex.com>
47b1c5726a717be052957b399ff0e2cd32fd7bca

pdfwrite - Fix a conversion of a /Separation bas space

Bug #695953 "bad pdf generation"

When converting a /Separation space's alternate, because the suer has
specified ColorConversionStrategy, if the conversion was to sRGB we would
write the incorrect space, as this case was missing from the switch.

No differences expected.

gs/devices/vector/gdevpdfg.c


2015-05-14 12:17:14 +0100
Ken Sharp <ken.sharp@artifex.com>
ab45751e7b38c7f9b28b090af52649f19355115d

pdfwrite - Use the Mitchell filter instead of 'bicubic' for better quality

Bug #695597 "Look at the output from the pdfwrite Bicubic image downsampler"

The Mitchell filter output is clearly of superior quality to the existing
bicubic filter. So use it instead.....

Note; when we switch to bicubic because the downsampling factor is not an
integer, we still use bicubic.

Update the documentation and change some of the defaults as well.

gs/Resource/Init/gs_pdfwr.ps
gs/devices/vector/gdevpsdi.c
gs/doc/Ps2pdf.htm


2015-05-13 15:04:07 +0100
Ken Sharp <ken.sharp@artifex.com>
d9172b7dfeac889e4301cd98216fdc297bf9e7bc

Don't load the image compression chooser when we are going to force lossless compression

Bug #695978 "Unexpected downsampling"

As noted in the bug thread, this isn't to do with downsampling. However, in
the original email conversation I did note that there was a confusion in
two tests in the code which should have been the same.

This commit resolves that confusion, if we are forcing lossless compression
we set the count of alternate streams to 1 initially. This will prevent us
from loading the image compression chooser and hence avoid the second test
which only takes place if we have alternate streams.

Disabling the compression chooser is what gets the performance gain noted
in the bug thread. It so happens that by specifying the downsampling filter
the code took a different path, even though no downsampling was taking, and
this was causing the compression chooser to be dumped.

No differences expected.

gs/devices/vector/gdevpdfi.c


2015-05-12 17:30:55 +0100
Chris Liddell <chris.liddell@artifex.com>
04de5b2db8ed54f424b6ec9458d7e1b5a15c89b4

Update zlib to 1.2.8.

Don't define _LARGEFILE64_SOURCE on MSVC build

zlib 1.2.8 tries to include unistd.h if _LARGEFILE64_SOURCE is defined,
causing build failure on Windows.

gs/base/stdpre.h
gs/zlib/CMakeLists.txt
gs/zlib/ChangeLog
gs/zlib/Makefile.in
gs/zlib/README
gs/zlib/adler32.c
gs/zlib/as400/bndsrc
gs/zlib/as400/compile.clp
gs/zlib/as400/readme.txt
gs/zlib/as400/zlib.inc
gs/zlib/compress.c
gs/zlib/configure
gs/zlib/contrib/README.contrib
gs/zlib/contrib/blast/blast.c
gs/zlib/contrib/blast/blast.h
gs/zlib/contrib/delphi/ZLib.pas
gs/zlib/contrib/dotzlib/DotZLib/UnitTests.cs
gs/zlib/contrib/infback9/infback9.c
gs/zlib/contrib/infback9/inftree9.c
gs/zlib/contrib/minizip/configure.ac
gs/zlib/contrib/minizip/crypt.h
gs/zlib/contrib/minizip/iowin32.c
gs/zlib/contrib/minizip/miniunzip.1
gs/zlib/contrib/minizip/minizip.1
gs/zlib/contrib/minizip/unzip.c
gs/zlib/contrib/minizip/unzip.h
gs/zlib/contrib/minizip/zip.c
gs/zlib/contrib/pascal/zlibpas.pas
gs/zlib/contrib/puff/puff.c
gs/zlib/contrib/puff/puff.h
gs/zlib/contrib/puff/pufftest.c
gs/zlib/contrib/testzlib/testzlib.c
gs/zlib/contrib/vstudio/readme.txt
gs/zlib/contrib/vstudio/vc10/miniunz.vcxproj.user
gs/zlib/contrib/vstudio/vc10/minizip.vcxproj.user
gs/zlib/contrib/vstudio/vc10/testzlib.vcxproj.user
gs/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.user
gs/zlib/contrib/vstudio/vc10/zlib.rc
gs/zlib/contrib/vstudio/vc10/zlibstat.vcxproj
gs/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.user
gs/zlib/contrib/vstudio/vc10/zlibvc.def
gs/zlib/contrib/vstudio/vc10/zlibvc.vcxproj
gs/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.user
gs/zlib/contrib/vstudio/vc11/miniunz.vcxproj
gs/zlib/contrib/vstudio/vc11/minizip.vcxproj
gs/zlib/contrib/vstudio/vc11/testzlib.vcxproj
gs/zlib/contrib/vstudio/vc11/testzlibdll.vcxproj
gs/zlib/contrib/vstudio/vc11/zlib.rc
gs/zlib/contrib/vstudio/vc11/zlibstat.vcxproj
gs/zlib/contrib/vstudio/vc11/zlibvc.def
gs/zlib/contrib/vstudio/vc11/zlibvc.sln
gs/zlib/contrib/vstudio/vc11/zlibvc.vcxproj
gs/zlib/contrib/vstudio/vc9/zlib.rc
gs/zlib/contrib/vstudio/vc9/zlibvc.def
gs/zlib/crc32.c
gs/zlib/deflate.c
gs/zlib/deflate.h
gs/zlib/examples/enough.c
gs/zlib/examples/gun.c
gs/zlib/examples/gzappend.c
gs/zlib/examples/gzjoin.c
gs/zlib/examples/gzlog.c
gs/zlib/examples/gzlog.h
gs/zlib/examples/zran.c
gs/zlib/gzguts.h
gs/zlib/gzlib.c
gs/zlib/gzread.c
gs/zlib/gzwrite.c
gs/zlib/infback.c
gs/zlib/inffast.c
gs/zlib/inflate.c
gs/zlib/inftrees.c
gs/zlib/qnx/package.qpg
gs/zlib/test/example.c
gs/zlib/test/minigzip.c
gs/zlib/treebuild.xml
gs/zlib/trees.c
gs/zlib/uncompr.c
gs/zlib/win32/Makefile.msc
gs/zlib/win32/README-WIN32.txt
gs/zlib/win32/zlib.def
gs/zlib/win32/zlib1.rc
gs/zlib/zconf.h
gs/zlib/zconf.h.cmakein
gs/zlib/zconf.h.in
gs/zlib/zlib.3
gs/zlib/zlib.3.pdf
gs/zlib/zlib.h
gs/zlib/zlib.map
gs/zlib/zutil.c
gs/zlib/zutil.h


2015-05-12 18:02:02 +0100
Chris Liddell <chris.liddell@artifex.com>
26657b796bb6756bf5a907f1745efe1d325978e0

Rename md5.c/h to gsmd5.c/h to avoid clashes.

gs/base/gp_unix_cache.c
gs/base/gsmd5.c
gs/base/gsmd5.h
gs/base/lib.mak
gs/base/md5.c
gs/base/md5.h
gs/base/md5main.c
gs/base/smd5.h
gs/base/stdpre.h
gs/base/unix-aux.mak
gs/doc/Develop.htm
gs/ghostscript.vcproj
gs/ghostscript_rt.vcxproj


2015-05-12 16:21:25 +0100
Chris Liddell <chris.liddell@artifex.com>
66e29868f02aaaed1f4f751d41c3b4c4e2bf4399

Update to libpng 1.6.17

gs/libpng/ANNOUNCE
gs/libpng/CHANGES
gs/libpng/CMakeLists.txt
gs/libpng/INSTALL
gs/libpng/LICENSE
gs/libpng/Makefile.am
gs/libpng/Makefile.in
gs/libpng/README
gs/libpng/TODO
gs/libpng/aclocal.m4
gs/libpng/arm/arm_init.c
gs/libpng/arm/filter_neon.S
gs/libpng/arm/filter_neon_intrinsics.c
gs/libpng/autogen.sh
gs/libpng/compile
gs/libpng/config.guess
gs/libpng/config.h.in
gs/libpng/config.sub
gs/libpng/configure
gs/libpng/configure.ac
gs/libpng/contrib/arm-neon/README
gs/libpng/contrib/arm-neon/android-ndk.c
gs/libpng/contrib/arm-neon/linux-auxv.c
gs/libpng/contrib/arm-neon/linux.c
gs/libpng/contrib/conftest/README
gs/libpng/contrib/conftest/read.dfa
gs/libpng/contrib/conftest/s_read.dfa
gs/libpng/contrib/conftest/s_write.dfa
gs/libpng/contrib/conftest/simple.dfa
gs/libpng/contrib/conftest/write.dfa
gs/libpng/contrib/examples/iccfrompng.c
gs/libpng/contrib/examples/pngpixel.c
gs/libpng/contrib/gregbook/Makefile.mingw32
gs/libpng/contrib/gregbook/Makefile.sgi
gs/libpng/contrib/gregbook/Makefile.unx
gs/libpng/contrib/gregbook/Makefile.w32
gs/libpng/contrib/gregbook/readpng.c
gs/libpng/contrib/gregbook/readpng2.c
gs/libpng/contrib/gregbook/readppm.c
gs/libpng/contrib/gregbook/rpng-x.c
gs/libpng/contrib/gregbook/rpng2-win.c
gs/libpng/contrib/gregbook/rpng2-x.c
gs/libpng/contrib/gregbook/writepng.c
gs/libpng/contrib/libtests/fakepng.c
gs/libpng/contrib/libtests/pngimage.c
gs/libpng/contrib/libtests/pngstest.c
gs/libpng/contrib/libtests/pngunknown.c
gs/libpng/contrib/libtests/pngvalid.c
gs/libpng/contrib/libtests/timepng.c
gs/libpng/contrib/pngminim/decoder/makefile
gs/libpng/contrib/pngminim/decoder/pngusr.h
gs/libpng/contrib/pngminim/encoder/makefile
gs/libpng/contrib/pngminim/encoder/pngusr.dfa
gs/libpng/contrib/pngminim/encoder/pngusr.h
gs/libpng/contrib/pngminim/preader/makefile
gs/libpng/contrib/pngminim/preader/pngusr.h
gs/libpng/contrib/pngminus/makefile.std
gs/libpng/contrib/pngminus/makefile.tc3
gs/libpng/contrib/pngminus/png2pnm.bat
gs/libpng/contrib/pngminus/png2pnm.c
gs/libpng/contrib/pngminus/png2pnm.sh
gs/libpng/contrib/pngminus/pngminus.bat
gs/libpng/contrib/pngminus/pngminus.sh
gs/libpng/contrib/pngminus/pnm2png.bat
gs/libpng/contrib/pngminus/pnm2png.c
gs/libpng/contrib/pngminus/pnm2png.sh
gs/libpng/contrib/tools/fixitxt.c
gs/libpng/contrib/tools/intgamma.sh
gs/libpng/contrib/tools/png-fix-itxt.c
gs/libpng/contrib/tools/pngfix.c
gs/libpng/contrib/visupng/PngFile.c
gs/libpng/depcomp
gs/libpng/example.c
gs/libpng/install-sh
gs/libpng/libpng-manual.txt
gs/libpng/libpng.3
gs/libpng/libpngpf.3
gs/libpng/ltmain.sh
gs/libpng/missing
gs/libpng/png.5
gs/libpng/png.c
gs/libpng/png.h
gs/libpng/pngconf.h
gs/libpng/pngdebug.h
gs/libpng/pngerror.c
gs/libpng/pngget.c
gs/libpng/pnginfo.h
gs/libpng/pngmem.c
gs/libpng/pngpread.c
gs/libpng/pngpriv.h
gs/libpng/pngread.c
gs/libpng/pngrio.c
gs/libpng/pngrtran.c
gs/libpng/pngrutil.c
gs/libpng/pngset.c
gs/libpng/pngstruct.h
gs/libpng/pngtest.c
gs/libpng/pngtrans.c
gs/libpng/pngusr.dfa
gs/libpng/pngwio.c
gs/libpng/pngwrite.c
gs/libpng/pngwtran.c
gs/libpng/pngwutil.c
gs/libpng/projects/vstudio/readme.txt
gs/libpng/projects/vstudio/zlib.props
gs/libpng/scripts/README.txt
gs/libpng/scripts/def.c
gs/libpng/scripts/def.dfn
gs/libpng/scripts/descrip.mms
gs/libpng/scripts/dfn.awk
gs/libpng/scripts/intprefix.c
gs/libpng/scripts/intprefix.dfn
gs/libpng/scripts/libpng-config-body.in
gs/libpng/scripts/libpng-config-head.in
gs/libpng/scripts/libpng.pc.in
gs/libpng/scripts/libtool.m4
gs/libpng/scripts/ltoptions.m4
gs/libpng/scripts/ltsugar.m4
gs/libpng/scripts/ltversion.m4
gs/libpng/scripts/lt~obsolete.m4
gs/libpng/scripts/makefile.32sunu
gs/libpng/scripts/makefile.64sunu
gs/libpng/scripts/makefile.aix
gs/libpng/scripts/makefile.amiga
gs/libpng/scripts/makefile.atari
gs/libpng/scripts/makefile.bc32
gs/libpng/scripts/makefile.beos
gs/libpng/scripts/makefile.bor
gs/libpng/scripts/makefile.cegcc
gs/libpng/scripts/makefile.darwin
gs/libpng/scripts/makefile.dec
gs/libpng/scripts/makefile.dj2
gs/libpng/scripts/makefile.elf
gs/libpng/scripts/makefile.freebsd
gs/libpng/scripts/makefile.gcc
gs/libpng/scripts/makefile.hp64
gs/libpng/scripts/makefile.hpgcc
gs/libpng/scripts/makefile.hpux
gs/libpng/scripts/makefile.ibmc
gs/libpng/scripts/makefile.intel
gs/libpng/scripts/makefile.knr
gs/libpng/scripts/makefile.linux
gs/libpng/scripts/makefile.mips
gs/libpng/scripts/makefile.msc
gs/libpng/scripts/makefile.msys
gs/libpng/scripts/makefile.ne12bsd
gs/libpng/scripts/makefile.netbsd
gs/libpng/scripts/makefile.openbsd
gs/libpng/scripts/makefile.sco
gs/libpng/scripts/makefile.sggcc
gs/libpng/scripts/makefile.sgi
gs/libpng/scripts/makefile.so9
gs/libpng/scripts/makefile.solaris
gs/libpng/scripts/makefile.solaris-x86
gs/libpng/scripts/makefile.std
gs/libpng/scripts/makefile.sunos
gs/libpng/scripts/makefile.tc3
gs/libpng/scripts/makefile.vcwin32
gs/libpng/scripts/makevms.com
gs/libpng/scripts/options.awk
gs/libpng/scripts/pnglibconf.dfa
gs/libpng/scripts/pnglibconf.h.prebuilt
gs/libpng/scripts/pnglibconf.mak
gs/libpng/scripts/prefix.c
gs/libpng/scripts/prefix.dfn
gs/libpng/scripts/sym.c
gs/libpng/scripts/sym.dfn
gs/libpng/scripts/symbols.c
gs/libpng/scripts/symbols.def
gs/libpng/scripts/symbols.dfn
gs/libpng/scripts/vers.c
gs/libpng/scripts/vers.dfn
gs/libpng/test-driver
gs/libpng/tests/pngimage-full
gs/libpng/tests/pngimage-quick
gs/libpng/tests/pngvalid-progressive-standard


2015-05-12 16:26:45 +0100
Chris Liddell <chris.liddell@artifex.com>
7274a44e2fda741572c815ef17298b7e37c96e7a

Add freetype's configure script to our repo.

Missed from previous commit.

gs/freetype/configure


2015-05-07 15:48:47 +0100
Chris Liddell <chris.liddell@artifex.com>
9b6129c546bd924fb588219bc2d352ff44a79dd5

Update freetype to 2.5.5 and tweak our makefile for it

Bug 695774: Fallback for glyph with degenerate bbox

(Re-applying after update to Freetype 2.5.5)

If a glyph has only one very narrow feature, the bbox can end up with either
the width or height of the bbox being 0, in which case no raster memory is
allocated and no attempt is made to render the glyph. This is less than ideal
when the drop-out compensation in the rendering code would actually result in
the glyph being rendered.

Normally the coordinates for the bbox are rounded (which is technically
correct). Now, if that results in the width or height being 0, we'll
then try explicitly rounding up/down, providing a sort of naive whole glyph
drop-out compensation.

The same change has been included upstream and will be in the next scheduled
Freetype release:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=942aa5ff

This causes a large number of low resolution differences on cluster, all
progressions where glyphs like dash ('-'), underscore ('_') and vertical
bar ('|') were dropping out entirely, and are now printing.

Revert to old Freetype CFF code

(for now, at least)

The new CFF code causes issues:

Altona_Technical_1v1_x3.pdf - missing u-umlaut
Bug687311.pdf - missing glyph
Bug689516.pdf - extra ' glyph
Bug690559.pdf - missing umlaut glyphs
Bug691045.pdf- missing accent glyphs
type2accent.pdf - missing accent glyphs
z400454b01d4-1.pdf - content missing

Fix and reenable new FT CFF code.

1) The incremental interface to Freetype requires the callback method to apply
character code mapping via std encoding, rather it being applied internally
in Freetype.
submitted and applied upstream:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=d65bf72

2) The VVCURVETO, HHCURVETO, VHCURVETO and HVCURVETO in the old CFF engine were
tolerant of extra parameters on the stack, apply a similar thing in the
new CFF code.
submitted and applied upstream:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=a87fb8cc

gs/base/freetype.mak
gs/freetype/CMakeLists.txt
gs/freetype/ChangeLog
gs/freetype/ChangeLog.21
gs/freetype/ChangeLog.23
gs/freetype/ChangeLog.24
gs/freetype/Jamfile
gs/freetype/README
gs/freetype/README.git
gs/freetype/autogen.sh
gs/freetype/builds/amiga/README
gs/freetype/builds/amiga/include/config/ftconfig.h
gs/freetype/builds/amiga/include/config/ftmodule.h
gs/freetype/builds/amiga/include/freetype/config/ftconfig.h
gs/freetype/builds/amiga/include/freetype/config/ftmodule.h
gs/freetype/builds/amiga/makefile
gs/freetype/builds/amiga/makefile.os4
gs/freetype/builds/amiga/smakefile
gs/freetype/builds/amiga/src/base/ftdebug.c
gs/freetype/builds/amiga/src/base/ftsystem.c
gs/freetype/builds/atari/deflinejoiner.awk
gs/freetype/builds/cmake/iOS.cmake
gs/freetype/builds/compiler/bcc-dev.mk
gs/freetype/builds/detect.mk
gs/freetype/builds/dos/detect.mk
gs/freetype/builds/exports.mk
gs/freetype/builds/freetype.mk
gs/freetype/builds/mac/README
gs/freetype/builds/mac/freetype-Info.plist
gs/freetype/builds/mac/ftmac.c
gs/freetype/builds/modules.mk
gs/freetype/builds/symbian/bld.inf
gs/freetype/builds/toplevel.mk
gs/freetype/builds/unix/aclocal.m4
gs/freetype/builds/unix/config.guess
gs/freetype/builds/unix/config.sub
gs/freetype/builds/unix/configure
gs/freetype/builds/unix/configure.ac
gs/freetype/builds/unix/configure.raw
gs/freetype/builds/unix/detect.mk
gs/freetype/builds/unix/freetype-config.in
gs/freetype/builds/unix/freetype2.in
gs/freetype/builds/unix/freetype2.m4
gs/freetype/builds/unix/ft2unix.h
gs/freetype/builds/unix/ftconfig.in
gs/freetype/builds/unix/ftsystem.c
gs/freetype/builds/unix/install-sh
gs/freetype/builds/unix/install.mk
gs/freetype/builds/unix/ltmain.sh
gs/freetype/builds/unix/pkg.m4
gs/freetype/builds/unix/unix-def.in
gs/freetype/builds/vms/ftconfig.h
gs/freetype/builds/vms/ftsystem.c
gs/freetype/builds/win32/detect.mk
gs/freetype/builds/win32/ftdebug.c
gs/freetype/builds/win32/vc2005/freetype.sln
gs/freetype/builds/win32/vc2005/freetype.vcproj
gs/freetype/builds/win32/vc2005/index.html
gs/freetype/builds/win32/vc2008/freetype.sln
gs/freetype/builds/win32/vc2008/freetype.vcproj
gs/freetype/builds/win32/vc2008/index.html
gs/freetype/builds/win32/vc2010/freetype.sln
gs/freetype/builds/win32/vc2010/freetype.vcxproj
gs/freetype/builds/win32/vc2010/freetype.vcxproj.filters
gs/freetype/builds/win32/vc2010/index.html
gs/freetype/builds/win32/visualc/freetype.dsp
gs/freetype/builds/win32/visualc/freetype.dsw
gs/freetype/builds/win32/visualc/freetype.sln
gs/freetype/builds/win32/visualc/freetype.vcproj
gs/freetype/builds/win32/visualc/index.html
gs/freetype/builds/win32/visualce/freetype.dsp
gs/freetype/builds/win32/visualce/freetype.dsw
gs/freetype/builds/win32/visualce/freetype.vcproj
gs/freetype/builds/win32/visualce/index.html
gs/freetype/builds/win32/w32-bcc.mk
gs/freetype/builds/win32/w32-bccd.mk
gs/freetype/builds/win32/w32-dev.mk
gs/freetype/builds/win32/w32-gcc.mk
gs/freetype/builds/win32/w32-icc.mk
gs/freetype/builds/win32/w32-intl.mk
gs/freetype/builds/win32/w32-lcc.mk
gs/freetype/builds/win32/w32-mingw32.mk
gs/freetype/builds/win32/w32-vcc.mk
gs/freetype/builds/win32/w32-wat.mk
gs/freetype/builds/win32/win32-def.mk
gs/freetype/builds/wince/ftdebug.c
gs/freetype/builds/wince/vc2005-ce/freetype.vcproj
gs/freetype/builds/wince/vc2005-ce/index.html
gs/freetype/builds/wince/vc2008-ce/freetype.vcproj
gs/freetype/builds/wince/vc2008-ce/index.html
gs/freetype/builds/windows/detect.mk
gs/freetype/builds/windows/ftdebug.c
gs/freetype/builds/windows/vc2005/freetype.sln
gs/freetype/builds/windows/vc2005/freetype.vcproj
gs/freetype/builds/windows/vc2005/index.html
gs/freetype/builds/windows/vc2008/freetype.sln
gs/freetype/builds/windows/vc2008/freetype.vcproj
gs/freetype/builds/windows/vc2008/index.html
gs/freetype/builds/windows/vc2010/freetype.sln
gs/freetype/builds/windows/vc2010/freetype.user.props
gs/freetype/builds/windows/vc2010/freetype.vcxproj
gs/freetype/builds/windows/vc2010/freetype.vcxproj.filters
gs/freetype/builds/windows/vc2010/index.html
gs/freetype/builds/windows/visualc/freetype.dsp
gs/freetype/builds/windows/visualc/freetype.dsw
gs/freetype/builds/windows/visualc/freetype.sln
gs/freetype/builds/windows/visualc/freetype.vcproj
gs/freetype/builds/windows/visualc/index.html
gs/freetype/builds/windows/visualce/freetype.dsp
gs/freetype/builds/windows/visualce/freetype.dsw
gs/freetype/builds/windows/visualce/freetype.vcproj
gs/freetype/builds/windows/visualce/index.html
gs/freetype/builds/windows/w32-bcc.mk
gs/freetype/builds/windows/w32-bccd.mk
gs/freetype/builds/windows/w32-dev.mk
gs/freetype/builds/windows/w32-gcc.mk
gs/freetype/builds/windows/w32-icc.mk
gs/freetype/builds/windows/w32-intl.mk
gs/freetype/builds/windows/w32-lcc.mk
gs/freetype/builds/windows/w32-mingw32.mk
gs/freetype/builds/windows/w32-vcc.mk
gs/freetype/builds/windows/w32-wat.mk
gs/freetype/builds/windows/win32-def.mk
gs/freetype/configure
gs/freetype/devel/ft2build.h
gs/freetype/devel/ftoption.h
gs/freetype/docs/CHANGES
gs/freetype/docs/CMAKE
gs/freetype/docs/CUSTOMIZE
gs/freetype/docs/DEBUG
gs/freetype/docs/INSTALL
gs/freetype/docs/INSTALL.ANY
gs/freetype/docs/INSTALL.CROSS
gs/freetype/docs/INSTALL.GNU
gs/freetype/docs/INSTALL.UNIX
gs/freetype/docs/LICENSE.TXT
gs/freetype/docs/VERSION.DLL
gs/freetype/docs/formats.txt
gs/freetype/docs/freetype-config.1
gs/freetype/docs/reference/ft2-auto_hinter.html
gs/freetype/docs/reference/ft2-base_interface.html
gs/freetype/docs/reference/ft2-basic_types.html
gs/freetype/docs/reference/ft2-bdf_fonts.html
gs/freetype/docs/reference/ft2-bitmap_handling.html
gs/freetype/docs/reference/ft2-bzip2.html
gs/freetype/docs/reference/ft2-cache_subsystem.html
gs/freetype/docs/reference/ft2-cff_driver.html
gs/freetype/docs/reference/ft2-cid_fonts.html
gs/freetype/docs/reference/ft2-computations.html
gs/freetype/docs/reference/ft2-font_formats.html
gs/freetype/docs/reference/ft2-gasp_table.html
gs/freetype/docs/reference/ft2-glyph_management.html
gs/freetype/docs/reference/ft2-glyph_stroker.html
gs/freetype/docs/reference/ft2-glyph_variants.html
gs/freetype/docs/reference/ft2-gx_validation.html
gs/freetype/docs/reference/ft2-gzip.html
gs/freetype/docs/reference/ft2-header_file_macros.html
gs/freetype/docs/reference/ft2-header_inclusion.html
gs/freetype/docs/reference/ft2-incremental.html
gs/freetype/docs/reference/ft2-index.html
gs/freetype/docs/reference/ft2-lcd_filtering.html
gs/freetype/docs/reference/ft2-list_processing.html
gs/freetype/docs/reference/ft2-lzw.html
gs/freetype/docs/reference/ft2-mac_specific.html
gs/freetype/docs/reference/ft2-module_management.html
gs/freetype/docs/reference/ft2-multiple_masters.html
gs/freetype/docs/reference/ft2-ot_validation.html
gs/freetype/docs/reference/ft2-outline_processing.html
gs/freetype/docs/reference/ft2-pfr_fonts.html
gs/freetype/docs/reference/ft2-quick_advance.html
gs/freetype/docs/reference/ft2-raster.html
gs/freetype/docs/reference/ft2-sfnt_names.html
gs/freetype/docs/reference/ft2-sizes_management.html
gs/freetype/docs/reference/ft2-system_interface.html
gs/freetype/docs/reference/ft2-toc.html
gs/freetype/docs/reference/ft2-truetype_engine.html
gs/freetype/docs/reference/ft2-truetype_tables.html
gs/freetype/docs/reference/ft2-tt_driver.html
gs/freetype/docs/reference/ft2-type1_tables.html
gs/freetype/docs/reference/ft2-user_allocation.html
gs/freetype/docs/reference/ft2-version.html
gs/freetype/docs/reference/ft2-winfnt_fonts.html
gs/freetype/docs/release
gs/freetype/include/config/ftconfig.h
gs/freetype/include/config/ftheader.h
gs/freetype/include/config/ftmodule.h
gs/freetype/include/config/ftoption.h
gs/freetype/include/config/ftstdlib.h
gs/freetype/include/freetype.h
gs/freetype/include/freetype/config/ftconfig.h
gs/freetype/include/freetype/config/ftheader.h
gs/freetype/include/freetype/config/ftmodule.h
gs/freetype/include/freetype/config/ftoption.h
gs/freetype/include/freetype/config/ftstdlib.h
gs/freetype/include/freetype/freetype.h
gs/freetype/include/freetype/ftadvanc.h
gs/freetype/include/freetype/ftbbox.h
gs/freetype/include/freetype/ftbdf.h
gs/freetype/include/freetype/ftbitmap.h
gs/freetype/include/freetype/ftbzip2.h
gs/freetype/include/freetype/ftcache.h
gs/freetype/include/freetype/ftchapters.h
gs/freetype/include/freetype/ftcid.h
gs/freetype/include/freetype/fterrdef.h
gs/freetype/include/freetype/fterrors.h
gs/freetype/include/freetype/ftgasp.h
gs/freetype/include/freetype/ftglyph.h
gs/freetype/include/freetype/ftgxval.h
gs/freetype/include/freetype/ftgzip.h
gs/freetype/include/freetype/ftimage.h
gs/freetype/include/freetype/ftincrem.h
gs/freetype/include/freetype/ftlcdfil.h
gs/freetype/include/freetype/ftlist.h
gs/freetype/include/freetype/ftlzw.h
gs/freetype/include/freetype/ftmac.h
gs/freetype/include/freetype/ftmm.h
gs/freetype/include/freetype/ftmodapi.h
gs/freetype/include/freetype/ftmoderr.h
gs/freetype/include/freetype/ftotval.h
gs/freetype/include/freetype/ftoutln.h
gs/freetype/include/freetype/ftpfr.h
gs/freetype/include/freetype/ftrender.h
gs/freetype/include/freetype/ftsizes.h
gs/freetype/include/freetype/ftsnames.h
gs/freetype/include/freetype/ftstroke.h
gs/freetype/include/freetype/ftsynth.h
gs/freetype/include/freetype/ftsystem.h
gs/freetype/include/freetype/fttrigon.h
gs/freetype/include/freetype/fttypes.h
gs/freetype/include/freetype/ftwinfnt.h
gs/freetype/include/freetype/ftxf86.h
gs/freetype/include/freetype/internal/autohint.h
gs/freetype/include/freetype/internal/ftcalc.h
gs/freetype/include/freetype/internal/ftdebug.h
gs/freetype/include/freetype/internal/ftdriver.h
gs/freetype/include/freetype/internal/ftgloadr.h
gs/freetype/include/freetype/internal/ftmemory.h
gs/freetype/include/freetype/internal/ftobjs.h
gs/freetype/include/freetype/internal/ftpic.h
gs/freetype/include/freetype/internal/ftrfork.h
gs/freetype/include/freetype/internal/ftserv.h
gs/freetype/include/freetype/internal/ftstream.h
gs/freetype/include/freetype/internal/fttrace.h
gs/freetype/include/freetype/internal/ftvalid.h
gs/freetype/include/freetype/internal/internal.h
gs/freetype/include/freetype/internal/psaux.h
gs/freetype/include/freetype/internal/pshints.h
gs/freetype/include/freetype/internal/services/svbdf.h
gs/freetype/include/freetype/internal/services/svcid.h
gs/freetype/include/freetype/internal/services/svgldict.h
gs/freetype/include/freetype/internal/services/svgxval.h
gs/freetype/include/freetype/internal/services/svkern.h
gs/freetype/include/freetype/internal/services/svmm.h
gs/freetype/include/freetype/internal/services/svotval.h
gs/freetype/include/freetype/internal/services/svpfr.h
gs/freetype/include/freetype/internal/services/svpostnm.h
gs/freetype/include/freetype/internal/services/svpscmap.h
gs/freetype/include/freetype/internal/services/svpsinfo.h
gs/freetype/include/freetype/internal/services/svsfnt.h
gs/freetype/include/freetype/internal/services/svttcmap.h
gs/freetype/include/freetype/internal/services/svtteng.h
gs/freetype/include/freetype/internal/services/svttglyf.h
gs/freetype/include/freetype/internal/services/svwinfnt.h
gs/freetype/include/freetype/internal/services/svxf86nm.h
gs/freetype/include/freetype/internal/sfnt.h
gs/freetype/include/freetype/internal/t1types.h
gs/freetype/include/freetype/internal/tttypes.h
gs/freetype/include/freetype/t1tables.h
gs/freetype/include/freetype/ttnameid.h
gs/freetype/include/freetype/tttables.h
gs/freetype/include/freetype/tttags.h
gs/freetype/include/freetype/ttunpat.h
gs/freetype/include/ft2build.h
gs/freetype/include/ftadvanc.h
gs/freetype/include/ftautoh.h
gs/freetype/include/ftbbox.h
gs/freetype/include/ftbdf.h
gs/freetype/include/ftbitmap.h
gs/freetype/include/ftbzip2.h
gs/freetype/include/ftcache.h
gs/freetype/include/ftcffdrv.h
gs/freetype/include/ftchapters.h
gs/freetype/include/ftcid.h
gs/freetype/include/fterrdef.h
gs/freetype/include/fterrors.h
gs/freetype/include/ftgasp.h
gs/freetype/include/ftglyph.h
gs/freetype/include/ftgxval.h
gs/freetype/include/ftgzip.h
gs/freetype/include/ftimage.h
gs/freetype/include/ftincrem.h
gs/freetype/include/ftlcdfil.h
gs/freetype/include/ftlist.h
gs/freetype/include/ftlzw.h
gs/freetype/include/ftmac.h
gs/freetype/include/ftmm.h
gs/freetype/include/ftmodapi.h
gs/freetype/include/ftmoderr.h
gs/freetype/include/ftotval.h
gs/freetype/include/ftoutln.h
gs/freetype/include/ftpfr.h
gs/freetype/include/ftrender.h
gs/freetype/include/ftsizes.h
gs/freetype/include/ftsnames.h
gs/freetype/include/ftstroke.h
gs/freetype/include/ftsynth.h
gs/freetype/include/ftsystem.h
gs/freetype/include/fttrigon.h
gs/freetype/include/ftttdrv.h
gs/freetype/include/fttypes.h
gs/freetype/include/ftwinfnt.h
gs/freetype/include/ftxf86.h
gs/freetype/include/internal/autohint.h
gs/freetype/include/internal/ftcalc.h
gs/freetype/include/internal/ftdebug.h
gs/freetype/include/internal/ftdriver.h
gs/freetype/include/internal/ftgloadr.h
gs/freetype/include/internal/ftmemory.h
gs/freetype/include/internal/ftobjs.h
gs/freetype/include/internal/ftpic.h
gs/freetype/include/internal/ftrfork.h
gs/freetype/include/internal/ftserv.h
gs/freetype/include/internal/ftstream.h
gs/freetype/include/internal/fttrace.h
gs/freetype/include/internal/ftvalid.h
gs/freetype/include/internal/internal.h
gs/freetype/include/internal/psaux.h
gs/freetype/include/internal/pshints.h
gs/freetype/include/internal/services/svbdf.h
gs/freetype/include/internal/services/svcid.h
gs/freetype/include/internal/services/svgldict.h
gs/freetype/include/internal/services/svgxval.h
gs/freetype/include/internal/services/svkern.h
gs/freetype/include/internal/services/svmm.h
gs/freetype/include/internal/services/svotval.h
gs/freetype/include/internal/services/svpfr.h
gs/freetype/include/internal/services/svpostnm.h
gs/freetype/include/internal/services/svprop.h
gs/freetype/include/internal/services/svpscmap.h
gs/freetype/include/internal/services/svpsinfo.h
gs/freetype/include/internal/services/svsfnt.h
gs/freetype/include/internal/services/svttcmap.h
gs/freetype/include/internal/services/svtteng.h
gs/freetype/include/internal/services/svttglyf.h
gs/freetype/include/internal/services/svwinfnt.h
gs/freetype/include/internal/services/svxf86nm.h
gs/freetype/include/internal/sfnt.h
gs/freetype/include/internal/t1types.h
gs/freetype/include/internal/tttypes.h
gs/freetype/include/t1tables.h
gs/freetype/include/ttnameid.h
gs/freetype/include/tttables.h
gs/freetype/include/tttags.h
gs/freetype/include/ttunpat.h
gs/freetype/modules.cfg
gs/freetype/src/Jamfile
gs/freetype/src/autofit/afangles.c
gs/freetype/src/autofit/afblue.c
gs/freetype/src/autofit/afblue.cin
gs/freetype/src/autofit/afblue.dat
gs/freetype/src/autofit/afblue.h
gs/freetype/src/autofit/afblue.hin
gs/freetype/src/autofit/afcjk.c
gs/freetype/src/autofit/afcjk.h
gs/freetype/src/autofit/afcover.h
gs/freetype/src/autofit/afdummy.c
gs/freetype/src/autofit/afdummy.h
gs/freetype/src/autofit/afglobal.c
gs/freetype/src/autofit/afglobal.h
gs/freetype/src/autofit/afhints.c
gs/freetype/src/autofit/afhints.h
gs/freetype/src/autofit/afindic.c
gs/freetype/src/autofit/afindic.h
gs/freetype/src/autofit/aflatin.c
gs/freetype/src/autofit/aflatin.h
gs/freetype/src/autofit/aflatin2.c
gs/freetype/src/autofit/aflatin2.h
gs/freetype/src/autofit/afloader.c
gs/freetype/src/autofit/afloader.h
gs/freetype/src/autofit/afmodule.c
gs/freetype/src/autofit/afmodule.h
gs/freetype/src/autofit/afpic.c
gs/freetype/src/autofit/afpic.h
gs/freetype/src/autofit/afranges.c
gs/freetype/src/autofit/afranges.h
gs/freetype/src/autofit/afscript.h
gs/freetype/src/autofit/afstyles.h
gs/freetype/src/autofit/aftypes.h
gs/freetype/src/autofit/afwrtsys.h
gs/freetype/src/autofit/autofit.c
gs/freetype/src/autofit/hbshim.c
gs/freetype/src/autofit/hbshim.h
gs/freetype/src/autofit/rules.mk
gs/freetype/src/base/basepic.c
gs/freetype/src/base/basepic.h
gs/freetype/src/base/ftadvanc.c
gs/freetype/src/base/ftbbox.c
gs/freetype/src/base/ftbdf.c
gs/freetype/src/base/ftbitmap.c
gs/freetype/src/base/ftcalc.c
gs/freetype/src/base/ftcid.c
gs/freetype/src/base/ftdbgmem.c
gs/freetype/src/base/ftdebug.c
gs/freetype/src/base/ftfstype.c
gs/freetype/src/base/ftgloadr.c
gs/freetype/src/base/ftglyph.c
gs/freetype/src/base/ftgxval.c
gs/freetype/src/base/ftinit.c
gs/freetype/src/base/ftlcdfil.c
gs/freetype/src/base/ftmac.c
gs/freetype/src/base/ftmm.c
gs/freetype/src/base/ftobjs.c
gs/freetype/src/base/ftotval.c
gs/freetype/src/base/ftoutln.c
gs/freetype/src/base/ftpfr.c
gs/freetype/src/base/ftpic.c
gs/freetype/src/base/ftrfork.c
gs/freetype/src/base/ftsnames.c
gs/freetype/src/base/ftstream.c
gs/freetype/src/base/ftstroke.c
gs/freetype/src/base/ftsynth.c
gs/freetype/src/base/ftsystem.c
gs/freetype/src/base/fttrigon.c
gs/freetype/src/base/fttype1.c
gs/freetype/src/base/ftutil.c
gs/freetype/src/base/ftwinfnt.c
gs/freetype/src/base/md5.c
gs/freetype/src/base/md5.h
gs/freetype/src/base/rules.mk
gs/freetype/src/bdf/bdfdrivr.c
gs/freetype/src/bdf/bdflib.c
gs/freetype/src/bzip2/ftbzip2.c
gs/freetype/src/cache/Jamfile
gs/freetype/src/cache/ftcbasic.c
gs/freetype/src/cache/ftccache.c
gs/freetype/src/cache/ftccache.h
gs/freetype/src/cache/ftccback.h
gs/freetype/src/cache/ftccmap.c
gs/freetype/src/cache/ftcmanag.c
gs/freetype/src/cache/ftcmanag.h
gs/freetype/src/cache/ftcmru.h
gs/freetype/src/cache/ftcsbits.c
gs/freetype/src/cff/cf2arrst.c
gs/freetype/src/cff/cf2arrst.h
gs/freetype/src/cff/cf2blues.c
gs/freetype/src/cff/cf2blues.h
gs/freetype/src/cff/cf2error.c
gs/freetype/src/cff/cf2error.h
gs/freetype/src/cff/cf2fixed.h
gs/freetype/src/cff/cf2font.c
gs/freetype/src/cff/cf2font.h
gs/freetype/src/cff/cf2ft.c
gs/freetype/src/cff/cf2ft.h
gs/freetype/src/cff/cf2glue.h
gs/freetype/src/cff/cf2hints.c
gs/freetype/src/cff/cf2hints.h
gs/freetype/src/cff/cf2intrp.c
gs/freetype/src/cff/cf2intrp.h
gs/freetype/src/cff/cf2read.c
gs/freetype/src/cff/cf2read.h
gs/freetype/src/cff/cf2stack.c
gs/freetype/src/cff/cf2stack.h
gs/freetype/src/cff/cf2types.h
gs/freetype/src/cff/cff.c
gs/freetype/src/cff/cffcmap.c
gs/freetype/src/cff/cffdrivr.c
gs/freetype/src/cff/cffgload.c
gs/freetype/src/cff/cffgload.h
gs/freetype/src/cff/cffload.c
gs/freetype/src/cff/cffobjs.c
gs/freetype/src/cff/cffobjs.h
gs/freetype/src/cff/cffparse.c
gs/freetype/src/cff/cffpic.c
gs/freetype/src/cff/cffpic.h
gs/freetype/src/cff/cfftypes.h
gs/freetype/src/cff/rules.mk
gs/freetype/src/cid/cidgload.c
gs/freetype/src/cid/cidload.c
gs/freetype/src/cid/cidobjs.c
gs/freetype/src/cid/cidparse.c
gs/freetype/src/cid/cidparse.h
gs/freetype/src/cid/cidriver.c
gs/freetype/src/gxvalid/gxvbsln.c
gs/freetype/src/gxvalid/gxvcommn.c
gs/freetype/src/gxvalid/gxvcommn.h
gs/freetype/src/gxvalid/gxverror.h
gs/freetype/src/gxvalid/gxvfeat.c
gs/freetype/src/gxvalid/gxvjust.c
gs/freetype/src/gxvalid/gxvkern.c
gs/freetype/src/gxvalid/gxvlcar.c
gs/freetype/src/gxvalid/gxvmod.c
gs/freetype/src/gxvalid/gxvmort.c
gs/freetype/src/gxvalid/gxvmort.h
gs/freetype/src/gxvalid/gxvmort0.c
gs/freetype/src/gxvalid/gxvmort1.c
gs/freetype/src/gxvalid/gxvmort2.c
gs/freetype/src/gxvalid/gxvmort4.c
gs/freetype/src/gxvalid/gxvmort5.c
gs/freetype/src/gxvalid/gxvmorx.c
gs/freetype/src/gxvalid/gxvmorx.h
gs/freetype/src/gxvalid/gxvmorx0.c
gs/freetype/src/gxvalid/gxvmorx1.c
gs/freetype/src/gxvalid/gxvmorx2.c
gs/freetype/src/gxvalid/gxvmorx4.c
gs/freetype/src/gxvalid/gxvmorx5.c
gs/freetype/src/gxvalid/gxvopbd.c
gs/freetype/src/gxvalid/gxvprop.c
gs/freetype/src/gxvalid/gxvtrak.c
gs/freetype/src/gzip/adler32.c
gs/freetype/src/gzip/ftgzip.c
gs/freetype/src/gzip/inftrees.c
gs/freetype/src/gzip/rules.mk
gs/freetype/src/gzip/zconf.h
gs/freetype/src/gzip/zutil.c
gs/freetype/src/gzip/zutil.h
gs/freetype/src/lzw/ftlzw.c
gs/freetype/src/lzw/ftzopen.h
gs/freetype/src/otvalid/otvbase.c
gs/freetype/src/otvalid/otvcommn.c
gs/freetype/src/otvalid/otvcommn.h
gs/freetype/src/otvalid/otverror.h
gs/freetype/src/otvalid/otvgdef.c
gs/freetype/src/otvalid/otvgpos.c
gs/freetype/src/otvalid/otvgsub.c
gs/freetype/src/otvalid/otvjstf.c
gs/freetype/src/otvalid/otvmath.c
gs/freetype/src/otvalid/otvmod.c
gs/freetype/src/pcf/README
gs/freetype/src/pcf/pcfdrivr.c
gs/freetype/src/pcf/pcfread.c
gs/freetype/src/pcf/pcfutil.c
gs/freetype/src/pfr/pfrcmap.c
gs/freetype/src/pfr/pfrdrivr.c
gs/freetype/src/pfr/pfrgload.c
gs/freetype/src/pfr/pfrload.c
gs/freetype/src/pfr/pfrobjs.c
gs/freetype/src/pfr/pfrsbit.c
gs/freetype/src/psaux/afmparse.c
gs/freetype/src/psaux/psconv.c
gs/freetype/src/psaux/psconv.h
gs/freetype/src/psaux/psobjs.c
gs/freetype/src/psaux/t1cmap.c
gs/freetype/src/psaux/t1decode.c
gs/freetype/src/pshinter/pshalgo.c
gs/freetype/src/pshinter/pshalgo.h
gs/freetype/src/pshinter/pshglob.c
gs/freetype/src/pshinter/pshglob.h
gs/freetype/src/pshinter/pshmod.c
gs/freetype/src/pshinter/pshpic.c
gs/freetype/src/pshinter/pshpic.h
gs/freetype/src/pshinter/pshrec.c
gs/freetype/src/pshinter/pshrec.h
gs/freetype/src/psnames/psmodule.c
gs/freetype/src/psnames/pspic.c
gs/freetype/src/psnames/pspic.h
gs/freetype/src/psnames/rules.mk
gs/freetype/src/raster/ftmisc.h
gs/freetype/src/raster/ftraster.c
gs/freetype/src/raster/ftrend1.c
gs/freetype/src/raster/rastpic.c
gs/freetype/src/raster/rastpic.h
gs/freetype/src/sfnt/pngshim.c
gs/freetype/src/sfnt/pngshim.h
gs/freetype/src/sfnt/rules.mk
gs/freetype/src/sfnt/sfdriver.c
gs/freetype/src/sfnt/sferrors.h
gs/freetype/src/sfnt/sfnt.c
gs/freetype/src/sfnt/sfntpic.c
gs/freetype/src/sfnt/sfntpic.h
gs/freetype/src/sfnt/sfobjs.c
gs/freetype/src/sfnt/ttbdf.c
gs/freetype/src/sfnt/ttcmap.c
gs/freetype/src/sfnt/ttcmap.h
gs/freetype/src/sfnt/ttcmapc.h
gs/freetype/src/sfnt/ttkern.c
gs/freetype/src/sfnt/ttload.c
gs/freetype/src/sfnt/ttmtx.c
gs/freetype/src/sfnt/ttmtx.h
gs/freetype/src/sfnt/ttpost.c
gs/freetype/src/sfnt/ttsbit.c
gs/freetype/src/sfnt/ttsbit.h
gs/freetype/src/sfnt/ttsbit0.c
gs/freetype/src/smooth/ftgrays.c
gs/freetype/src/smooth/ftsmooth.c
gs/freetype/src/smooth/ftspic.c
gs/freetype/src/smooth/ftspic.h
gs/freetype/src/tools/afblue.pl
gs/freetype/src/tools/apinames.c
gs/freetype/src/tools/chktrcmp.py
gs/freetype/src/tools/cordic.py
gs/freetype/src/tools/docmaker/content.py
gs/freetype/src/tools/docmaker/docmaker.py
gs/freetype/src/tools/docmaker/formatter.py
gs/freetype/src/tools/docmaker/sources.py
gs/freetype/src/tools/docmaker/tohtml.py
gs/freetype/src/tools/docmaker/utils.py
gs/freetype/src/tools/ftrandom/README
gs/freetype/src/tools/ftrandom/ftrandom.c
gs/freetype/src/tools/test_afm.c
gs/freetype/src/tools/test_bbox.c
gs/freetype/src/tools/test_trig.c
gs/freetype/src/truetype/rules.mk
gs/freetype/src/truetype/truetype.c
gs/freetype/src/truetype/ttdriver.c
gs/freetype/src/truetype/ttgload.c
gs/freetype/src/truetype/ttgload.h
gs/freetype/src/truetype/ttgxvar.c
gs/freetype/src/truetype/ttinterp.c
gs/freetype/src/truetype/ttinterp.h
gs/freetype/src/truetype/ttobjs.c
gs/freetype/src/truetype/ttobjs.h
gs/freetype/src/truetype/ttpic.c
gs/freetype/src/truetype/ttpic.h
gs/freetype/src/truetype/ttpload.c
gs/freetype/src/truetype/ttsubpix.c
gs/freetype/src/truetype/ttsubpix.h
gs/freetype/src/type1/t1afm.c
gs/freetype/src/type1/t1driver.c
gs/freetype/src/type1/t1gload.c
gs/freetype/src/type1/t1load.c
gs/freetype/src/type1/t1objs.c
gs/freetype/src/type1/t1parse.c
gs/freetype/src/type42/t42drivr.c
gs/freetype/src/type42/t42objs.c
gs/freetype/src/type42/t42parse.c
gs/freetype/src/winfonts/winfnt.c
gs/freetype/vms_make.com


2015-05-05 12:33:16 +0100
Chris Liddell <chris.liddell@artifex.com>
28876fa00c5a325a6b3ad2e768375f203d060aaf

Improve efficiency of pdf_info.ps

Original, pdf_info.ps would loop to retrieve each page of a PDF, emit its
media information. Then, in a second loop, it would retrieve each page, and
emit its font information.

This change means it will loop only once, retrieving each page only once, and
using the same page dictionary object for both media information and fonts used.

This *should* improve the speed on very large PDF files.

No cluster differences.

gs/toolbin/pdf_info.ps


2015-05-11 09:57:01 -0700
Michael Vrhel <michael.vrhel@artifex.com>
8117f3e31575a08451d0e8a1b9c251ffbef047a8

Non-Isolated transparency groups should ignore CS entry

If a transparency group is not isolated the blending color
space for the group is inherited from the parent group.

This is a partial fix for the issues seen in Bug 695930.
In particular the issues seen with the letter D.

gs/base/gstrans.c


2015-04-30 15:06:06 +0100
Chris Liddell <chris.liddell@artifex.com>
0f3691890027236e3c7b34317426b913f62288dc

Bug 695972: always use a square scaling for glyphs

We're seeing Truetype fonts whose hinting programs do not work correctly with
certain, non-square scalings. So ensure that the scale we pass to Freetype
is equal in in width and height, then apply the non-square part in the final,
output matrix (along with non-square resolution scaling, and shearing etc).

This causes quite a lot of cluster differences, due to rounding changes.

gs/base/fapi_ft.c


2015-05-02 19:49:34 +0100
Robin Watts <robin.watts@artifex.com>
b34e6835e6e918dfca8c6558fe00eedcca6660c5

Fix error in gsapi; gsapi_run_string is broken.

gsapi_run_string calls through to gsapi_run_string_with_length
with the first argument converted from a gs_lib_ctx_t * to a void *.
gsapi_run_string_with_length then performs this conversion again.
This will lead to a SEGV.

The fix is not to do this dereference.

Wouldn't it be better if we used types here rather than void *'s?

gs/psi/iapi.c


2015-04-27 10:11:22 -0600
Henry Stiles <henry.stiles@artifex.com>
505601bd6ee848be2aff84d264ae9583ae96c64a

Fix Bug #695951 Portion of page cut off.

Implement the PJL command EDGETOEDGE, not only does this enable full
bleed but it also shifts the logical page to the left allowing printing
of graphics that would have been clipped because they extended past the
physical page edge.

pcl/pcpage.c
pl/pjparse.c


2015-04-15 14:33:18 -0700
Ray Johnston <ray.johnston@artifex.com>
b742626e8ec7d976535395316f7986097982b73b

Use the Windows "QueryPerformanceCounter" high res timer for usertime.

The gp_get_realtime is OK, but for gp_get_usertime from C it is handy
to have better resolution. Also use this for the -Z: output from the
print_resource_usage function. NB the functions were always defined
as returning seconds and nanoseconds.

gs/base/gp_win32.c
gs/psi/imain.c


2015-04-22 16:44:37 -0700
Ray Johnston <ray.johnston@artifex.com>
53cb4209b397c9e8121aeec31607cbfb53622f20

Fix for file BFAZSLPD.pdf JPX image uses Lab colorspace.

The jp2_csp_dict definitiion for the basic Lab colorspace for a JPX
encoded image was (1) not an array with a dict as the second element
as required by the PDF parser, and (2) the dict must have a WhitePoint
array (required per the PDF spec).

gs/Resource/Init/pdf_draw.ps


2015-04-17 14:24:35 +0100
Chris Liddell <chris.liddell@artifex.com>
d56cdfd63c26a29d118f570d1b37d32214834c78

Remove -Werror=return-type for builds with UFST

Some UFST versions will fail to build with -Werror=return-type, so when
building with UFST, strip that option from the compiler flags.

No cluster differences.

configure.ac
gs/configure.ac


2015-04-21 12:18:45 +0100
Chris Liddell <chris.liddell@artifex.com>
3b174bb21edd57fb53914d3fea3c202f9e41d4a3

Remove a now superfluous assignment to NULL.

The previous commit changed pdf14_free_mask_stack() so it would set the
pdf14 context "mask_stack" pointer to NULL after freeing the memory, so
there's now no requirement for the calling code to do so.

No cluster differences

gs/base/gdevp14.c


2015-04-21 12:00:29 +0100
Chris Liddell <chris.liddell@artifex.com>
e895599e66cc174b2d7a2740e747f05589836546

Bug 695952: avoid double free of mask_stack.

The pdf14 context "mask_stack" could end up being freed twice, once by
pdf14_free_mask_stack() and then again explicitly.

This commit removes the erroneous free, but I also opted to change
pdf14_free_mask_stack() so it takes the pdf14 context pointer (rather than
just the "mask_stack" pointer) which means it can set the pointer to NULL as
well as freeing it, which is safer for the error handling case.

No cluster differences.

gs/base/gdevp14.c


2015-04-21 10:33:40 +0100
Ken Sharp <ken.sharp@artifex.com>
30fde04cca068e34cc64f3656d7eefc50a8316d7

PDF Interpreter - validate and clamp arguments to Td

Bug #695950 "Incomplete rendering of PDF file"

As usual an invalid PDF file. In this case the PDF file contains an argument
to Td which is 1.5090553259294607 x 10^258. Typical implementation limits
in Appendix C of the PDF Reference limit reals to 3.403x10^38

GS returns the value as -infinity, it appears Acrobat clamps these out of range
values to 0 (at least for the Td operator)

This commit checks the arguments against 2^32 as checking against the full
range permitted for reals would be slightly more difficult, and its unlikely
that a real file would use arguments larger than this anyway. If any argument
is out of range it gets clamped to 0.

No differences expected.

gs/Resource/Init/pdf_ops.ps


2015-04-18 17:52:27 +0100
Chris Liddell <chris.liddell@artifex.com>
e2f65f3e0087442caf6d657f238e50ce87403988

Bug 695934: Fix a typo in Type 1 font bounds checking.

When I added some stack bounds checking to the Type 1 charstring code, I
mistakenly used a value for subrs in the gsubrs section, this could lead to
stack corruption and a subsequent segfault.

No cluster differences.

gs/base/gxtype1.c


2015-04-17 12:19:26 +0100
Chris Liddell <chris.liddell@artifex.com>
b3fc1892747bba78cc2dcc8181803bf5dc4b6a5d

Bug 695890: Update jbig2dec for modern libpng

libpng 1.5.x and newer hide the internals, and only allow values to be set and
retrieved via define API calls.

Also tidy up a couple of (benign) compiler warnings.

No cluster diffs.

gs/jbig2dec/jbig2_arith.c
gs/jbig2dec/jbig2_image_pbm.c
gs/jbig2dec/jbig2_image_png.c
gs/jbig2dec/jbig2_refinement.c
gs/jbig2dec/jbig2_text.c


2015-04-16 15:28:58 +0100
Chris Liddell <chris.liddell@artifex.com>
5d87a9ba906ad303abdd487a719cc966e857c198

Tweak FAPI code for server search.

If we have multiple FAPI "servers" (i.e. font renderers) we cycle through them
testing if they can handle a particular font. To indicate it cannot, a server
will return an invalidaccess error, which we were erroneously returning to the
interpreter.

Now keep searching on an invalidaccess.

No cluster differences.

gs/psi/zfapi.c


2015-04-16 15:26:20 +0100
Ken Sharp <ken.sharp@artifex.com>
6d1bde2bad1afeb610735f7ea53cabd7d3120fbe

PDF interpreter - additional debugging option

Added a 'stdoutprint' to go along with stderrprint, this allows us to
have the 'pdfformaterror' and other informative messages sent to stdout
instead of stderr.

When capturing stdout and stderr for debugging purposes it can be useful to
have the logging/debug messages go to the same place as the error messages
in order that they are captured properly 'interleaved'.

gs/Resource/Init/pdf_main.ps


2015-04-15 17:19:07 +0100
Ken Sharp <ken.sharp@artifex.com>
4dce3f3cb2ece5795312a85c5ac2693ff8293169

pdfwrite - Pay attention to /MediaBox pdfmarks

Previously we always emitted a /MediaBox for each page based only on the
PostScript media size, even if we had a /MediaBox /Page pdfmark.

This in itself is incorrect, but worse we would then emit the MediaBox from
the /Page pdfmark as well, leading to a dictionary with duplicate keys....

This commit will use any /MediaBox /Page pdfmark in preference to any PostScript
media settings, though it will default to those if no such pdfmark is sent.

This exhibits a difference in Bug692502.eps because this file (uniquely in
our test suite it seems) does emit a /MediaBox /Page pdfmark, which is
different to the media we use in PostScript. Previously it was incorrect,
now it is correct, or at least we honour the pdfmark now.....

gs/devices/vector/gdevpdf.c


2015-04-10 11:47:13 -0700
Michael Vrhel <michael.vrhel@artifex.com>
e8142ce7390e2686456894a602df07d8de16a7c7

Fix for bug 695916. Simulated overprint blending of spots colors issue

For non separation devices, we had attempted to simulate the overprint effect of spot colors
that are not CMYK values. This was set up by default, and could be turned on/off
with -dSimulateOverprint = true/false. Looking over the method used to
simulate the colors, it was clear that there were issues and that a completely
different approach is needed. To do proper spot color overprinting simulation
will require buffers for each of the spot colorants. The plan is to
achieve this through the use of the pdf14 device and setting it up in
a manner similar to how it is set up when the target device is a separation
device. The colorants will then be collapsed to the device's real color
space when the pdf14 put image occurs. For now, this commit disables the
blending approach, which did not work in every case, fixing the customers issue
with this file.

gs/base/gdevp14.c
gs/base/gsdparam.c
gs/base/gsicc_manage.c
gs/base/gsovrc.c
gs/base/gsstate.c
gs/base/gxblend1.c
gs/base/gxoprect.c


2015-04-09 10:43:21 -0700
Ray Johnston <ray.johnston@artifex.com>
64188c8e3615de788ad916b7d14e24e98d9c289c

Fix Bug 695904, Transparency with non-identity transfer functions.

This does _not_ yet implement the arcane transfer function handling of
section 7.6.4 of the PDF 1.7 Reference Manual, but it fixes a problem
detected by customer 532 who uses a transfer function set by PS before
the PDF file runs. This was causing bands in part of the image.

The problem was that the pdf14 compositor was not applying the transfer
function for monochrome or indexed color images, and did apply it for
color images or when the halftone thresholding was done during image
processing. The transfer function was then applied during pdf14_put_image
only when the default method of passing the image to the device was
used (not when the device implemented a put_image proc, as the customer's
code does for efficiency). If color images had the transfer function
applied, then the put_image would apply it a second time.

For bands that had the pdf14 compositor skipped because transparency
was not needed, the transfer function was applied correctly, causing
differences on transitions to bands that used the pdf14 compositor.

The fix applies the transfer function in the pdf14 cmap procs and does
_not_ apply it during pdf14_put_image, which also makes it consistent
with devices that implement a put_image proc and do not have the pis
or any way to get the transfer function.

gs/Resource/Init/pdf_main.ps
gs/base/gdevp14.c


2015-04-09 10:41:05 +0100
Ken Sharp <ken.sharp@artifex.com>
f143277e868a37d7154c64408c0cc9b30c4fdb9d

txtwrite - Be careful not to handle strinwidth operations as text

Bug #695914 "txtwrite command is different then Adobe save as other tool"

If we have a CIDFont with a descendant, and the descendant is not present,
and we substitute with a type 1 font, then when we do a stringwidth the
txtwrite code could throw an error (no current point) if the text was the
first element on the page.

This would then throw the font handling off, and we would get the text as
being in a type 1 font, instead of a type 0 font, which meant that the text
output was incorrect, even when a ToUnicode CMap was present.

We can deal with this easily by copying the approach from pdfwrite, if its
a stringwidth let the graphics library deal with it.

No differences in cluster, we don't test txtwrite

gs/devices/vector/gdevtxtw.c


2015-04-08 17:04:05 +0100
Ken Sharp <ken.sharp@artifex.com>
35f03f7dfdbd7aa834e5c283a24cad48184f7a27

eps2write - Use an improved approach to getting the BBox of filled paths

Bug #695910 "Error reading a content stream" when using device eps2write by GhostScript 9.16 "

The eps2write device, unlike other devices, needs a 'page' bounding box and
so often 'renders' content where the other high level devices don't. In
general this works because we degenerate to low level operations, which are
then filtered by the eps2write device and used to calculate the BBox.

Unfortunately for pattern fills this doesn't work, as we check the pattern
tile boundaries, and because we aren't really rendering these are 0. This
causes an 'unregistered' error.

This commit alters the way we calculate filled path BBoxes, instead of
rendering to low level objects, we take advantage of the code to calculate
the bounding box of a path, intersect that with the current clip path's
outer bounding box, and use that as the BBox of the path. Because we only
case about maxima and minima this is sufficient, we don't have to worry
about all the nooks and crannies potentially present in the path.

We do have to watch out for a degenerate path or bbox though, and not take
that into account.

This commit also does a couple of casts, just to eliminate a compiler warning.

No differences expected.

gs/devices/vector/gdevpdfd.c


2015-04-07 13:26:54 +0100
Chris Liddell <chris.liddell@artifex.com>
f63ac1a69b1bec4c97d032b69c61bcadeb69902f

Up version number to 9.18

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2015-04-07 16:40:04 +0100
Ken Sharp <ken.sharp@artifex.com>
d82053315ada259dfccaabdc41fbbaab50df46a1

PDF interpreter - attempt to recover from broken, linearised, PDF file

Bug #695619 "mupdf cannot load page with a special PDF file"

The 'special' PDF file is in fact a totally broken PDF file, caused by
concatenating a regular PDF file with a linearised PDF file. We detect the
fact that the xref is not where the Linearised file says it is, and attempt
to recover, but fail because the trailer dictionary we find is for the
linearised file, and so does not contain a Root object. Without that we
cannot decipher the file.

We could attempt to find a 'Linearised' key, but instead I've opted to
search backwards through the file looking for a previous trailer dictionary
until we find one that has a Root key, or fail altogether to locate one. If
we find eon we proceed as before, if we fail to find a trailer with a Root
key we fail altogether, there's not much else we can do.

Note that depending how ones chooses to 'recover' from this broken PDF file
could potentially determine *which* of the 2 PDF files present actually
gets interpreted. We match Acrobat in this case, I won't guarantee we will
do so in every case.

No differences expected.

gs/Resource/Init/pdf_rbld.ps


2015-04-06 21:43:55 +0100
Chris Liddell <chris.liddell@artifex.com>
22573c9d775a7a56449d601e0bbc951c2b325f16

Bug 695905: reoder tests to prevent seg fault.

We should check the pointer is not null *before* trying to strcmp it.

No cluster differences.

gs/devices/vector/gdevpsdp.c


2015-04-02 16:18:34 +0100
Chris Liddell <chris.liddell@artifex.com>
e136d916239917c9224ebba180cb12329271a597

Fix a couple of minor typos and out of dates

relating to cidfmap.

gs/Resource/Init/cidfmap
gs/doc/Use.htm


2015-04-02 12:14:24 +0100
Chris Liddell <chris.liddell@artifex.com>
ad0c3d1a9f4f209aefa4414b8073e42cd440edd5

Tidy jbig2dec build configuration:

1) Remove automake version specific tests/use

The script does unpleasant things which can cause us to attempt to use a
specific version of automake, which should not really be needed these days.

So we now just check that the automake version is greater than or equal to the
version we require.

The old method can still be accessed by invoking autogen.sh thus:
USE_OLD=yes ./autogen.sh

2) Add automake option to make dist "self contained"

The automake default is to symlink to a few scripts ('compile', 'missing' etc)
in the current system's automake install. That results in a configuration
reliant on automake being installed, and the same version, for a build.

Add the '--copy' automake option so the script files are copied rather than
linked, so we get a self contained configure/make/install setup.

No cluster differences.

gs/ijs/autogen.sh
gs/jbig2dec/autogen.sh


2015-04-06 11:59:15 +0100
Ken Sharp <ken.sharp@artifex.com>
54f502f35b12fd889a47e048b15d92bd8ca66d55

PDF Interpreter - work around non-text operations inside a text block

Bug #695897 "Text missing reading PDF file"

In addition to nesting text block inside one another, the test file also
executes a 'Do' (draw image) operator inside a text block. This is also
illegal, except in the context of type character descriptions, or pattern
fills of text, or similar.

This commit slightly modifies the previous one (7bc2078) by copying the
TextSaveMatrix, instead of simply referencing it, when we execute a gsave
inside a text block. We can then safely modify the copied array whenever
a 'cm' operation takes place (just as we already did for TextSaveMatrix),
finally we can check for TextSaveMatrix or qTextSaveMatrix being present
when we execute a non-text operation. If this occurs (so far only Do tests
this) then we save the graphics state (so we don't disturb any following text)
return to the 'TextSaveMatrix', perform the operation and then restore the
graphics state.

It should be emphasised that this file is badly broken, both nested text blocks
and non-text operations inside text blocks are specifically forbidden in the
PDF reference. So the warning messages emitted when this occurs have been
extended slightly.

No differences expected

gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_ops.ps


2015-04-04 09:35:23 +0100
Ken Sharp <ken.sharp@artifex.com>
76c20780b2148e56ffcb6944d910d5a04f4f96a9

PDF Inerpreter - work around illegally nested BT blocks

Bug #695897 "Text missing reading PDF file"

There are actually 2 problems with this file, this is the first fix. The
file contains nested text blocks, quite a few of them, in direct contravention
of the PDF specification.

We already have code to detect this, but it relies on a specific key being
present in the current dictionary to detect the condition. Sadly this file
executes the nested blocks inside a q/Q pair as well, and the way the PDF
interpreter deals with a q means that we start a new, empty, dictionary
which neatly prevents us detecting this.

The nasty hack here introduces a new key 'qTextSaveMatrix' in the dictionary
created by a 'q' operator, *if* the current dictionary has a TextSaveMatrix
key present. We then add detection of the qTextSaveMatrix key to the BT
operator in exactly the same way as the existing TextSaveMatrx.

Attempts to have the TextSaveMatrix copied and used, so that the CTM would
follow the nesting simply didn't work, leading to the key being present
when it shouldn't be, or not present when it should, or having the wrong
value. The only 'correct' way to deal with this illegal file is to separate
the Text Matrix out from the CTM and track changes to it as required. This
would mean rewriting large parts of the PDF interpreter which I don;t think
is reasonable to cope with an invalid file.

The second problem will be the subject of another commit.

No differences expected.

gs/Resource/Init/pdf_ops.ps


2015-04-01 16:36:18 -0700
Ray Johnston <ray.johnston@artifex.com>
29cc06bfced3b06b55bed829ce314273461b21e5

Clean up assumption that gs_no_id is "false"

gs/base/gxclpath.c


2015-04-02 08:42:11 +0100
Chris Liddell <chris.liddell@artifex.com>
f1d98961fe65d8b0964ab93040d995d5463a43d8

Remove spurious debug code.

No cluster diffs

gs/Resource/Init/pdf_ops.ps


2015-03-30 22:31:57 +0100
Chris Liddell <chris.liddell@artifex.com>
30c7475eee24393f454368b998980afbae89e542

Fix a (rather unfortunate) typo in some debug code.

No cluster differences.

gs/toolbin/headers.tcl


2015-04-01 15:50:02 -0600
Henry Stiles <henry.stiles@artifex.com>
8dc207fec1341fa844bc7ae578eb37a8d0267087

Fix bug 695867, incorrect cursor position.

The current user space position was not being maintained by the HPGL IR
command. This is fairly rare and we haven't seen it in our tests,
HPGL's SC (scale), IP (Input P1 and P2) and IR (Input Relative P1 and
P2) are used to set up scaling for the page and most jobs usually will
provide an initial user space coordinate after modifying the CTM and not
depend on the location that was current when the scaling was applied.

There is more work to be done in this area, the IP command needs similar
updating as provided here for IR, and other attributes like anchor
corner and carriage return position should be looked at for side effects
resulting from IP, IR or SC.

pcl/pgconfig.c


2015-03-28 15:22:22 -0600
Henry Stiles <henry.stiles@artifex.com>
820064dd06bb0bd63c0c89dc5f500fe70c23ac4b

Refactor and cleanup hpgl/2 IP and IR commands.

pcl/pgconfig.c


2015-03-30 22:19:37 +0100
Chris Liddell <chris.liddell@artifex.com>
f68473b9034c542575ac8f8334e0c7fc546fa422

Fix date typo in the docs.

No cluster diffs.

gs/doc/History9.htm


2015-03-30 10:56:05 +0100
Chris Liddell <chris.liddell@artifex.com>
2a0d0d006ce1066cbe83ebc818025321953a1cd3

Add the MAKEDIRS target onto the pnglibconf.h deps

No cluster differences.

gs/base/png.mak


2015-03-30 10:19:43 +0100
Chris Liddell <chris.liddell@artifex.com>
6dd7e751d41639fd303b795d1503173d38d8d82d

Move the augmenting of CFLAGS for -Werror....

until after we've identified we're building with gcc.

No cluster differences.

configure.ac


2015-03-19 11:55:19 +0000
Chris Liddell <chris.liddell@artifex.com>
26e90b59da069a84cc34501f4c8b4dbfc3dacbe0

Bring master up to date with release branch

Update versions and dates for release candidate.

Update News.htm and History9.htm for release candidate.

Some doc updates in response to rc1 feedback

Tweak dates and stuff for second release candidate

Update History file.

Update changelog

Update product string and date in the code.

Update release date in the docs.

README.txt
gs/Makefile.in
gs/base/gscdef.c
gs/base/version.mak
gs/contrib/opvp/gdevopvp.c
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/int.mak
gs/psi/msvc.mak
gs/psi/winint.mak


2015-03-27 17:30:18 -0600
Henry Stiles <henry.stiles@artifex.com>
1e8937a52502d0244c6a3bc173dccd4d83cf00f2

Fix 695888 - GhostPCL locks up.

The flag to indicate a command is not implemented (e_Unimplemented) was
set to a positive integer which the GL/2 parser uses to tell the pcl
parser more PCL is expected. This isn't a problem unless the job
terminates unexpectedly with an unimplemented GL/2 command leaving the
PCL parser poised to read more data. Without changing the
parsers we simply change the unimplemented flag to 0 and the command
will be properly ignored, like range errors (e_Range).

Unfortunately that leaves us with the same code for e_Range and
e_Unimplemented which may be an inconvenience when debugging, but both
codes demand the same behavior of the parsers so we prefer this change
to trying to find all the places in the parser where e_Unimplemented
should be "plugged in".

pcl/pcommand.h


2015-03-27 09:58:06 +0000
Ken Sharp <ken.sharp@artifex.com>
5e87a537c30c15e30615eafedb83ff040a33f6ee

PDF Interpreter - When resolving type 6 halftones, preserve the underlying PDFfile position

Bug #695886 "Error reading a content stream, missing objects"

Type 6 halftones in PDF are stream based, so when we first use a graphics
state which includes a type 6 halftone, we use resolvestream to read the
halftone.

However resolvestream does not preserve the current file position of PDFfile
and resolveht6 wasn't taking steps to save and restore it. Often this would
not be harmful but if we are already reading a stream (eg a page content
stream) and the stream was large enough not to be entirely buffered then when
we ran out of data we would return to 'PDFfile' to read another buffer from
the content stream. The fact that PDFfile had been repositioned would cause
us to read the wrong data (always, in fact, the 'endstream' from the halftone
stream).

This commit retrieves the current position of PDFfile and restores it after
resolving the stream.

No differences expected

gs/Resource/Init/pdf_draw.ps


2015-03-23 15:29:37 +0000
Chris Liddell <chris.liddell@artifex.com>
f56588ea3cb9337b3c4143a9eb651f085cfe8298

LCMS2 pointer alignment on SPARC/gcc

Building on commit 5a2da7dd71:

With gcc on (Ultra)SPARC hardware, pointers must be 8 byte aligned, even in
32 bit userspace (where sizeof(void *) == 4).

So it means taking special action to enforce 8 byte alignment in the LCMS2
memory management code.

We'll set the alignment for SPARC builds in the configure script.

No cluster differences.

config.mak.in
configure.ac
gs/Makefile.in
gs/configure.ac


2015-03-24 13:50:34 +0000
Chris Liddell <chris.liddell@artifex.com>
cab2628321d8806747da90c02c3abf4b2c9fe4c3

LCMS2 on SPARC ptr alignment.

Allow the ptr alignment for LCMS2 memory management to set at build time on the
compiler command line.

Submitted upstream:
https://github.com/mm2/Little-CMS/commit/dd0074b2

No cluster differences

gs/lcms2/src/lcms2_internal.h


2015-03-23 17:03:41 +0000
Chris Liddell <chris.liddell@artifex.com>
8bb53a7f2cb309cc10209f8e7ed31daf6c2f4811

Bug 695882: ensure function protypes are available

There are some special defines on Linux to include prototypes for pread, pwrite
and pthread_mutexattr_settype: add these to our "unistd_.h" header.

Also, tweak the the configure script to check for prototypes as well as just
successful linking before including the code that uses those functions

No cluster differences

configure.ac
gs/base/gp_psync.c
gs/base/unistd_.h
gs/configure.ac


2015-03-24 11:07:43 +0000
Ken Sharp <ken.sharp@artifex.com>
0997387b6b691d7495722d020ee7f6bab4988020

PDF Interpreter - ignore XRefStm entries which poitn beyond end of file

Bug #695883 "Error: /invalidaccess in --run--"

The file is pretty well broken, it claims to be a hybrid (PDF 1.5 or better
readable by PDF 1.4 consumer, it uses xref streams) and as such its trailer
dictionary contains an XRefStm key whose value is supposed to point to the
PDF 1.5 xref stream. It doesn't, in fact it points past the end of the file
and so is clearly bogus.

This commit tests to ensure the XRefStm value is inside the file before
attempting to read it.

No differences expected.

gs/Resource/Init/pdf_main.ps


2015-03-20 00:11:26 +0000
Chris Liddell <chris.liddell@artifex.com>
8a275b2f12c2d22cb40fcf421c309a018dd48b0e

Tweak builds for SPARC architecture

SPARC's interesting alignment requirements don't work with the memory header
ID code, so disable it.

No cluster differences.

configure.ac
gs/configure.ac


2015-03-19 11:50:40 +0000
Chris Liddell <chris.liddell@artifex.com>
e77a35e7ffef84328a7fb26379783455da3f8a58

Bump version numbers to 9.17

Usual cluster differences.

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2015-03-30 09:16:22 +0100
Chris Liddell <chris.liddell@artifex.com>
92d4dd195d0cb9155851411db04e1d2af1f59c03

Update release date in the docs.

gs/contrib/opvp/gdevopvp.c
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2015-03-30 09:15:05 +0100
Chris Liddell <chris.liddell@artifex.com>
20c71f82b1116ee95e0ae03121b9f137900fbcd8

Update product string and date in the code.

gs/base/gscdef.c
gs/base/version.mak


2015-03-24 14:08:57 +0000
Chris Liddell <chris.liddell@artifex.com>
2a35f042bfa9fa431794546bff4b2e388036798d

Update changelog

gs/doc/History9.htm


2015-03-23 15:29:37 +0000
Chris Liddell <chris.liddell@artifex.com>
49ac7a284e46cf8df8eb553c91ee48a6b004652e

LCMS2 pointer alignment on SPARC/gcc

Building on commit 5a2da7dd71:

With gcc on (Ultra)SPARC hardware, pointers must be 8 byte aligned, even in
32 bit userspace (where sizeof(void *) == 4).

So it means taking special action to enforce 8 byte alignment in the LCMS2
memory management code.

We'll set the alignment for SPARC builds in the configure script.

No cluster differences.

config.mak.in
configure.ac
gs/Makefile.in
gs/configure.ac


2015-03-24 13:50:34 +0000
Chris Liddell <chris.liddell@artifex.com>
f2f22a246dcbe8468880535ea75f47e0fc4619ce

LCMS2 on SPARC ptr alignment.

Allow the ptr alignment for LCMS2 memory management to set at build time on the
compiler command line.

Submitted upstream:
https://github.com/mm2/Little-CMS/commit/dd0074b2

No cluster differences

gs/lcms2/src/lcms2_internal.h


2015-03-23 17:03:41 +0000
Chris Liddell <chris.liddell@artifex.com>
b96200d7fc5f3b7464744589f6657e9b4c4cb3ec

Bug 695882: ensure function protypes are available

There are some special defines on Linux to include prototypes for pread, pwrite
and pthread_mutexattr_settype: add these to our "unistd_.h" header.

Also, tweak the the configure script to check for prototypes as well as just
successful linking before including the code that uses those functions

No cluster differences

configure.ac
gs/base/gp_psync.c
gs/base/unistd_.h
gs/configure.ac


2015-03-24 11:07:43 +0000
Ken Sharp <ken.sharp@artifex.com>
9358edca362b60f8ace388768548e6e94f5ebec8

PDF Interpreter - ignore XRefStm entries which poitn beyond end of file

Bug #695883 "Error: /invalidaccess in --run--"

The file is pretty well broken, it claims to be a hybrid (PDF 1.5 or better
readable by PDF 1.4 consumer, it uses xref streams) and as such its trailer
dictionary contains an XRefStm key whose value is supposed to point to the
PDF 1.5 xref stream. It doesn't, in fact it points past the end of the file
and so is clearly bogus.

This commit tests to ensure the XRefStm value is inside the file before
attempting to read it.

No differences expected.

gs/Resource/Init/pdf_main.ps


2015-03-20 15:45:56 +0000
Chris Liddell <chris.liddell@artifex.com>
866f98d9b88b6b450aa4d112cabc60a1f964bbd6

Update History file.

gs/doc/History9.htm


2015-03-20 15:09:41 +0000
Chris Liddell <chris.liddell@artifex.com>
08c4ed7a418ea4eed1efd12cf8fe81297c00a2f9

Tweak dates and stuff for second release candidate

gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2015-03-20 14:58:45 +0000
Chris Liddell <chris.liddell@artifex.com>
6aac092d495d1651840074cd2ed9ba64d9d4c0a4

Some doc updates in response to rc1 feedback

README.txt
gs/doc/History9.htm
gs/doc/News.htm


2015-03-20 00:11:26 +0000
Chris Liddell <chris.liddell@artifex.com>
6c56ffb81354dca442b69389b0f7a0b75e4e864e

Tweak builds for SPARC architecture

SPARC's interesting alignment requirements don't work with the memory header
ID code, so disable it.

No cluster differences.

configure.ac
gs/configure.ac


2015-03-19 11:55:19 +0000
Chris Liddell <chris.liddell@artifex.com>
369bb9d36e4309c93bb60a2eb799ee5ff16e9c7c

Update versions and dates for release candidate.

Update News.htm and History9.htm for release candidate.

gs/Makefile.in
gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/int.mak
gs/psi/msvc.mak
gs/psi/winint.mak



Version 9.16 (2015-03-30)

This is the twelfth full release in the stable 9.x series, and is primarily a maintenance release.

Highlights in this release include:

For a list of open issues, or to report problems, please visit bugs.ghostscript.com.

Incompatible changes

No recorded incompatible changes.

Changelog

2015-03-20 00:11:26 +0000

2015-03-19 11:55:19 +0000
Chris Liddell <chris.liddell@artifex.com>
49ac7a284e46cf8df8eb553c91ee48a6b004652e

LCMS2 pointer alignment on SPARC/gcc

Building on commit 5a2da7dd71:

With gcc on (Ultra)SPARC hardware, pointers must be 8 byte aligned, even in
32 bit userspace (where sizeof(void *) == 4).

So it means taking special action to enforce 8 byte alignment in the LCMS2
memory management code.

We'll set the alignment for SPARC builds in the configure script.

No cluster differences.

config.mak.in
configure.ac
gs/Makefile.in
gs/configure.ac


2015-03-24 13:50:34 +0000
Chris Liddell <chris.liddell@artifex.com>
f2f22a246dcbe8468880535ea75f47e0fc4619ce

LCMS2 on SPARC ptr alignment.

Allow the ptr alignment for LCMS2 memory management to set at build time on the
compiler command line.

Submitted upstream:
https://github.com/mm2/Little-CMS/commit/dd0074b2

No cluster differences

gs/lcms2/src/lcms2_internal.h


2015-03-23 17:03:41 +0000
Chris Liddell <chris.liddell@artifex.com>
b96200d7fc5f3b7464744589f6657e9b4c4cb3ec

Bug 695882: ensure function protypes are available

There are some special defines on Linux to include prototypes for pread, pwrite
and pthread_mutexattr_settype: add these to our "unistd_.h" header.

Also, tweak the the configure script to check for prototypes as well as just
successful linking before including the code that uses those functions

No cluster differences

configure.ac
gs/base/gp_psync.c
gs/base/unistd_.h
gs/configure.ac


2015-03-24 11:07:43 +0000
Ken Sharp <ken.sharp@artifex.com>
9358edca362b60f8ace388768548e6e94f5ebec8

PDF Interpreter - ignore XRefStm entries which poitn beyond end of file

Bug #695883 "Error: /invalidaccess in --run--"

The file is pretty well broken, it claims to be a hybrid (PDF 1.5 or better
readable by PDF 1.4 consumer, it uses xref streams) and as such its trailer
dictionary contains an XRefStm key whose value is supposed to point to the
PDF 1.5 xref stream. It doesn't, in fact it points past the end of the file
and so is clearly bogus.

This commit tests to ensure the XRefStm value is inside the file before
attempting to read it.

No differences expected.

gs/Resource/Init/pdf_main.ps



Chris Liddell <chris.liddell@artifex.com>
6c56ffb81354dca442b69389b0f7a0b75e4e864e

Tweak builds for SPARC architecture

SPARC's interesting alignment requirements don't work with the memory header
ID code, so disable it.

No cluster differences.

configure.ac
gs/configure.ac



Chris Liddell <chris.liddell@artifex.com>
03d399b295f9a39f743eb194ebce0995d52d0bfb

Update versions and dates for release candidate.

gs/Makefile.in
gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/int.mak
gs/psi/msvc.mak
gs/psi/winint.mak


2015-03-19 13:50:07 +0000
Chris Liddell <chris.liddell@artifex.com>
a463733e35e1070a06029657dedb67148c33c87a

Handle an invalid cidfmap entry in the CIDFont subst code

Certain types of invalid entry in the cidfmap can mean that resourcestatus
returns "true" but a subsequent "findresource" will fail. There is already
validation code to strip out invalid entries, but as an extra safety measure,
call the findresource in a stopped context, so we can recover, and continue
with the next substitution fallback stage.

No cluster differences.

gs/Resource/Init/pdf_font.ps


2015-03-19 10:51:32 +0000
Chris Liddell <chris.liddell@artifex.com>
68f1390c29df09d2cc7cdb5c815c71aaa77f667c

Add instructions about using ghostpdf.inf on Windows 8

Add the instructions in the comments in ghostpdf.inf, and in a separate README
file.

Lots of "AT YOUR OWN RISK!!" comments in both.

No cluster differences.

gs/lib/ghostpdf.README
gs/lib/ghostpdf.inf


2015-03-19 10:49:34 +0000
Chris Liddell <chris.liddell@artifex.com>
2487b24d668f86350a1c5bdcf0e7a485470665e9

Correct a copy'n'paste mistake in a conditional

No cluster differences.

gs/configure.ac


2015-03-18 08:37:15 +0000
Chris Liddell <chris.liddell@artifex.com>
3c4edb1e23eec531b96194f85685b30656149732

Bug 695860: only shutdown BGPrint if it's active

Always forcing a setpagedevice interacts poorly with pdfwrite/ps2write (which
rely on the device shutting down to trigger emitting the final output).

Since vector devices cannot benefit from BGPrint, only disable BGPrint (with
setpagedevice) if BGPrint was active in the first place.

No cluster differences.

gs/psi/imain.c


2015-03-17 22:42:22 +0000
Chris Liddell <chris.liddell@artifex.com>
2ceee5a8a0e1a4d65f14de5f6cf53bb939b2f02c

Bug 695872: handle real/integer mixup in image Decode dict

In PDF we now pass the Height value from the image dict into the parameters
for the filter to access (specifically, the DCTDecodeFilter), and this will
cause an error if the Height value is, erroneously, a real rather than integer
value (the Postscript image operator appears to already handle that error,
at least in certain cases, gracefully).

So the filter code does not throw an error, round and convert the value to an
integer before storing it in the filter parameters dictionary.

No cluster differences.

gs/Resource/Init/pdf_draw.ps


2015-03-17 21:44:50 +0000
Chris Liddell <chris.liddell@artifex.com>
ace1b71cd0097ee830692e3e59738e084f5a4141

Fix a couple of typos in Install.htm

No cluster differences.

gs/doc/Install.htm


2015-03-17 18:05:51 +0000
Chris Liddell <chris.liddell@artifex.com>
41ff61ceceb55dd03da6b309c290c880c38fce04

Bug 692861: update Install.htm for "new" installer.

Bring Install.htm in-line with the nsis based Windows installer.

Also, remove references to Adobe Type Manager, and document that OpenVMS and
OS/2 are no longer actively supported by us.

No cluster differences

gs/doc/Install.htm


2015-03-17 16:38:50 +0000
Chris Liddell <chris.liddell@artifex.com>
b18cefb10c2391188d07ad0ca397e58121434b8b

Recursive mutex emulation: fix order of operations

We have to invalidate the self_id value *before* we unlock the mutex, as the
mutex implicitly protects the self_id (and lcount) value.

Also add asserts so we'll abort if the self_id and/or lcount get out of whack.

Finally, add a missing default value for RECURSIVE_MUTEXATTR in the ghostpdl
configure.

No cluster differences

configure.ac
gs/base/gp_psync.c
gs/base/lib.mak


2015-03-17 14:45:01 +0000
Chris Liddell <chris.liddell@artifex.com>
3dbcbb2ac75a8565534310cba189544ccdd1c1c4

Bug 695862: addendum - fix typo

No cluster differences.

gs/base/gp_psync.c


2015-03-16 22:18:41 +0000
Chris Liddell <chris.liddell@artifex.com>
edf3461901805376bdb1b9aa995df359531c7539

Fix a write after free memory issue.

No cluster differences

gs/base/stream.c


2015-03-16 12:52:49 +0000
Chris Liddell <chris.liddell@artifex.com>
444e0bf9c43bae0261660e6318ba0e514c18d41e

Bug 695862: use PTHREAD_MUTEX_RECURSIVE(_NP) if available

or properly emulate recursive mutexes ourselves.

No cluster differences

config.mak.in
configure.ac
gs/Makefile.in
gs/base/gp_psync.c
gs/configure.ac


2015-03-07 16:25:46 +0000
Chris Liddell <chris.liddell@artifex.com>
f1feefae4e6412d37db6abb46b492a74073964c7

Bug 691396: add new lines to FAPIdebug messages.

No cluster differences

tmp commit

gs/Resource/Init/gs_fapi.ps


2015-03-07 17:05:53 +0000
Chris Liddell <chris.liddell@artifex.com>
febe7a1acf152ef7379a126bfa65358604272b5a

Flush around FAPI "internal" debug messages.

Try to avoid the FAPI -Z1 messages stomping on other output messages by flushing
around the messages.

No cluster differences.

gs/base/fapi_ft.c
gs/base/fapiufst.c


2015-03-07 15:10:49 +0000
Chris Liddell <chris.liddell@artifex.com>
0f1d26a75ccb1adc806287f7e97af14af85f4fdf

Bug 692815: Fonts resourcestatus and native fonts

The core of the resourcestatus implementation for the Fonts category would
check the content of Fontmap, but would not trigger the native font scanning
to occur. So two invokations of resourcestatus for Font could result in
different results depending on whether, in the intervening period, another
operation had triggered the native font scan.

This could result in unexpected behaviour from the PDF interpreter where a
"synthetic" substitute could be created on the first page, and a native font
selected on the second page, for the same font name.

We'll now try to "find" the font for resourcestatus, if we fail, we'll try to
trigger the native font scan, and retry.

Further, I had missed the fact that this code used the Fontmap dictionary in my
previous commit, so it now accounts for the new NativeFontmap dict.

No cluster differences.

gs/Resource/Init/gs_fonts.ps
gs/Resource/Init/gs_res.ps


2015-03-05 14:56:51 +0000
Chris Liddell <chris.liddell@artifex.com>
3edd8e8e64c0b35364c2fdf2e13336191c023f4b

Bug 690653: fix order of font substitution mapping.

Previously, the enumeration of the "native fonts" (i.e. when using
fontconfig) wrote the mappings into the same Fontmap dictionary that is built
from the Fontmap file.

This could cause several problems. Firstly, it was possible for fonts found by
the native font search to effective replace the default font set - which should
*never* happen. Secondly, and even worse, the font found when trying to load
one of the default font set could change depending on whether a prior attempt
was made to load from from outside the default font, because the attempt to load
a font from outside the default set would trigger the Fontmap to change with the
native fonts being added.

We'll now keep the Fontmap dict from the Fontmap file separate from a new
native fontmap dictionary. We'll now check the Fontmap dictionary, then try to
load directly by name, then check the .nativeFontmap dict.

The .nativeFontmap also gets the results of scanning the directories in the
FONTDIR paremeter.

No cluster differences.

Bug 690653 (related): update pdf interp to use NativeFontmap

The pdf interpreter accesses Fontmap, so tweak it to also use NativeFontmap.

No cluster differences

gs/Resource/Init/gs_fonts.ps
gs/Resource/Init/pdf_font.ps


2015-03-16 18:29:09 +0000
Robin Watts <robin.watts@artifex.com>
0391d0e73c1892138b11c1416113e32b80d3317f

Update clusterpush.pl to cope with new mupdf source layout.

gs/toolbin/localcluster/clusterpush.pl


2015-03-16 08:39:36 -0700
Ray Johnston <ray.johnston@artifex.com>
949e2de694cb5464a26794b7679d8f74ad2fe02b

Temporary fix for bug 695711. Disable BGPrint when NumRenderingThreads > 0.

This will be fixed, but since background printing is an optimization, it is
better to disable it instead of having a SEGV occur due to a race condition.

gs/base/gdevprn.c


2015-03-16 10:08:52 +0000
Ken Sharp <ken.sharp@artifex.com>
d4440c2190845bdd165f3d208d508f45e2142bee

pdfwrite - process octal escapes in DSC comments

Bug #695850 - "DSC comments not being read correctly from PDFDocEncoding"

DSC comments are not encoded using PDFDocEncoding, nor are they PostScript
strings, they are a simple sequence of bytes. So it seems that we should
simply preserve that sequence in the output PDF file. However Distiller
behaves 'oddly' with DSC comments containing escape characters:

octal escapes (\ followed by 3 numbers) are converted into apparently a
PDFDocEncoding byte

non-octal numeric escapes (\ followed by less than 3 numbers or numebrs
which aren't octal) have the \ changed to a ?

non-octal non-numeric escapes (eg \n) simply get the escape dropped.

IMO this leads to problems, for example bug687660.ps has a %%Title which is
a DOS filename '%%Title: (C:\PHYSICS\TeX\SPINTRONICS\SPIN_HALL\gh_ef_001.eps)'
Distiller mangles this by dropping all the '\' characters to become
(C:PHYSICSTeXSPINTRONICSSPIN_HALLgh_ef_001.eps)

This commit alters the way that pdfwrite handles octal escapes *only*. These
are converted to binary and will then be encoded as if they were in
PDFDocEncoding which matches Distiller. We will not attempt to match the
observed behaviour of Distiller, not least because I think its completely
the wrong thing to do.


No differences expected

gs/devices/vector/gdevpdfp.c


2015-03-13 09:20:39 -0700
Michael Vrhel <michael.vrhel@artifex.com>
a16e39318467d8a802296bd34bbf0fab7f7809d5

Fix for bug 695863 overprint while pattern color is active

If a pattern color space is present when a graphics state swap occurs, and
the overprint changes from on to off in the graphics state the overprint
compositor is not disabled. In Bug 695863 a DeviceN image fill follows such
a case and the fill is improperly performed with overprint enabled. With this
commit we disable the overprint compositor if overprint is off. If overprint
is not off, it is not clear how we should proceed, as the color space is
a factor in that set up and here the color space is a pattern.

gs/base/gspcolor.c
gs/base/lib.mak


2015-03-10 22:05:52 -0700
Michael Vrhel <michael.vrhel@artifex.com>
64e33af885e49b40c0ebc070ede50e86a8ed3bdb

Change to check for len > 0 on while loop

Requested by a customer and protects against caller passing invalid len

gs/psi/dwmainc.c


2015-03-07 08:38:57 -0800
Michael Vrhel <michael.vrhel@artifex.com>
8e8a9c4265c3346055ecfc8025880cab28e268de

Fix for bug 693070 psdrgb device

The psdrgb device should not alter its number of components but it should stay
fixed. This commit plus b5b03bde360a7ba625a4c40a936c4e2fd5a32359
should fix the psdrgb device.

gs/devices/gdevpsd.c


2015-03-06 13:28:51 -0800
Michael Vrhel <michael.vrhel@artifex.com>
b5b03bde360a7ba625a4c40a936c4e2fd5a32359

PageSpotColors was getting handled by devn_get_params but not devn_put_params

For additive devices devn_put_params was not handling PageSpotColors but
devn_get_params was. This mismatch would lead to an error for the psdrgb
device, which is an additive device built upon the DeviceN device. Additive
devices do not handle apot colors at this time so the fix was to make
the handling of PageSpotColors in devn_get_params dependent upon the device
polarity like devn_put_params does.

gs/base/gdevdevn.c


2015-03-06 11:19:07 -0800
Michael Vrhel <michael.vrhel@artifex.com>
c75e5c690c6f9c1da2e9225d4986967d1d391c8b

Fix for bug 695791. Wrong ICC profile written when source was CIELAB colorspace.

gs/devices/vector/gdevxps.c


2015-03-03 18:59:17 +0000
Chris Liddell <chris.liddell@artifex.com>
12ddbaa69c38fa0178ff60a012ff358987b6238d

Handle non-integer /Rotate values.

Add a convert to integer (cvi) after retrieving the /Rotate entry from a PDF
/Page object (we already reject values that are not a multiple of 90).

In this case, the value was 90.0.

No cluster differences.

gs/Resource/Init/pdf_main.ps


2015-02-27 12:25:15 -0800
Michael Vrhel <michael.vrhel@artifex.com>
863c929faa7811ce6d78cb8d1b4610ee00a7a572

Fix mistake on temp state setup for named color replacement

I had not properly set up the colorant mapping positions and
size for the temporary graphic state that is used during the
storage of the color values that are set by the named color
replacement code. Thanks to Stefan for finding this.

gs/base/gxcmap.c


2015-02-26 18:01:04 -0700
Henry Stiles <henry.stiles@artifex.com>
7093747c7336656cfba938cff705b36fea6106c2

More improvement related to bug #695833 properly selecting LinePrinter
not Courier.

pl/plftable.h


2015-02-26 17:54:10 -0700
Henry Stiles <henry.stiles@artifex.com>
f4f0f0a92a543adef944c09ff065defe1c58fefe

Remove the test for a TrueType file type to make way for supporting
other font file types.

pl/pllfont.c


2015-02-25 07:44:51 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
70bd09212747f8b13e94948c04cadf5b0df65899

Silence a compiler warning in fuzzy.c

gs/toolbin/tests/fuzzy.c


2015-02-12 10:13:10 -0800
Ray Johnston <ray.johnston@artifex.com>
a2d08f1eb88355c81672668595f0b80f32386e48

Fix pattern-clist with transparency color mismatch with raster patterns

Cust 532 noticed that colors would be (very slightly) different when patterns
were rendered from raster patterns vs. using the pattern-clist approach. This
happened when the pattern has transparency such as fts_25_2526.ps.

The file tests_private/comparefiles/Bug692720.pdf is a progression (lower left
"21h" and "22h" are missing and the bold outline for some of the text on the
left panel is wrong without this change.

Fix it to make sure and push and pop a transparency group around the pattern
filling when pattern-clist is used, the same as for raster patterns that have
transparecncy. The 'blending_mode' was moved to the tile (gx_color_tile_s)
from the ttrans (gx_pattern_trans_s) struct so that it will be available when
painting from the pattern-clist.

Also remove some code in gxpcmap.c that was dead (#if 0) since 2007.

gs/base/gdevp14.c
gs/base/gsptype1.c
gs/base/gxclread.c
gs/base/gximask.c
gs/base/gxp1fill.c
gs/base/gxpcmap.c
gs/base/gxpcolor.h
gs/psi/zpcolor.c


2015-02-23 14:13:53 -0800
Ray Johnston <ray.johnston@artifex.com>
fb531eecd1942807a792ef66a1aa49ec00792d13

Fix bugs 695840, 695841. Regression due to pdf14_clist optimization.

If the color characteristics of the device do not match the pdf14
compositor, rendering the clist bands without the pdf14 compositor
will fail, either by reading colors with the wrong depth back from
the clist or colors having been pre-converted using a device ICC
profile that is different than the colors that are written using
the pdf14 compositor.

gs/base/gdevp14.c
gs/base/gdevp14.h
gs/base/gxclrast.c
gs/base/gxclread.c


2015-02-23 12:18:01 -0800
Michael Vrhel <michael.vrhel@artifex.com>
1dca5f29bf59d3071021a3ba4b7378e60d0e7a10

Fixes for named color support

A few minor fixes for named color support including the detection of the
None colorant in the DeviceN list of colorants. Making sure that the
equivalent CMYK color is correctly computed. Make sure that all the
colorants in the device are cleared out prior to setting the ones
associated with the device profile in the example code given in
gsicc_transform_named_color.

gs/base/gsequivc.c
gs/base/gsequivc.h
gs/base/gsicc_cache.c
gs/base/gxcmap.c


2015-02-23 10:15:02 -0800
Michael Vrhel <michael.vrhel@artifex.com>
46b59d18a8f4d204e83327e135c17657caefde3a

Fix issues with sICCOutputColors option

If an NCLR ICC profile is specified for output then it is also
possible to specify the colorant names associated with the profile.
This information is described by the sICCOutputColors parameter.
There was an issue where the default colorant names AND the
colorant names specified by sICCOutputColors were getting
added to the device. With this fix only the colorants specified
by sICCOutputColors are added to the device.

gs/base/gsdparam.c
gs/base/gsicc_manage.c
gs/devices/gdevpsd.c


2015-02-23 12:30:30 +0000
Chris Liddell <chris.liddell@artifex.com>
375752983d9373b28bf1fada04fc9325673bc51c

Bug 695516: fix psl.dev/psbase.dev deps snafu....

And also tidy dependency for PDF interpreter.

No cluster differences

gs/psi/int.mak


2015-02-23 11:49:08 +0000
Ken Sharp <ken.sharp@artifex.com>
1125d53f8db9f7402f37fa8fe7823257e4c6554a

PDF Interpreter - fix some kinds of FreeText processing

Bug 695848 "Ghostscript decode error when opening PDF"

The processing of the Default Appearance was mishandling some colour
specifications. It was expecting arrays for all operators, when in fact only
the (undocumented ?) 'r' operator takes an array, all the others simply
take a sequence of values.

gs/Resource/Init/pdf_draw.ps


2015-02-20 15:05:51 -0800
Michael Vrhel <michael.vrhel@artifex.com>
6ab5713f556bde0be38fa411e2eb1d25eb73e2c5

Use different remap proc for indexed color space when dealing with named colors

Currently the Index color space uses gx_default_remap_color for its remap procedure.
This is a problem for when we are dealing with an index color whose base space
is DeviceN and we are doing named color replacement in our color management. To
fix this, we introduce a different version of the Indexed color space that is installed
with a different remap proc for the case when we have a index color space whose
base space is DeviceN or Separation AND we have specified a named color ICC profile.

gs/base/gscolor2.c
gs/base/gscolor2.h
gs/psi/zcolor.c


2015-02-20 14:23:56 -0800
Michael Vrhel <michael.vrhel@artifex.com>
033cf566b74c7e12bfb82d9b63a7bc680c51c5f8

Add LockColorants option to tiffsep and psdcmyk devices

If someone specifies a list of colorants using something like this

-c "<< /SeparationColorNames [ /Cyan /Magenta /Yellow /Black /Violet /Orange]
/SeparationOrder [ /Cyan /Magenta /Yellow /Black /Violet /Orange]>> setpagedevice"

on the command line, it would be nice if they also had the option to
keep the colorants to only this set for the tiffsep and psdcmyk devices.

Currently, the list of colorants above would be included as well as any that
are encountered in the document (up to a max of 64). In some cases, this
may be the desired outcome. In other cases, the user may like to keep the colorants
to only those set by SeparationColorNames. Toward that end, this commits adds
a -dLockColorants=true/false option for the tiffsep and psdcmyk devices to
ensure that the devices do not add on additional colorants as they are
encountered in the document.

gs/devices/gdevpsd.c
gs/devices/gdevtsep.c


2015-02-20 09:51:50 +0000
Chris Liddell <chris.liddell@artifex.com>
5135b9cd1a26332af64ff3a770103d8d8ad001a0

Bug 695842: cope with no pread/pwrite available

Older Unix and Linux systems for example.

Without pread/pwrite we also disable multithreading support.

No cluster differences

config.mak.in
configure.ac
gs/Makefile.in
gs/base/gp_unifs.c
gs/configure.ac


2015-02-20 11:32:34 +0000
Chris Liddell <chris.liddell@artifex.com>
93ceb24e53ac62b5d6ac338dd8983e2e2a15eaad

Cope with systems with inttypes.h that doesn't define PRI..

The PRI... macros for printf formatting aren't always available, so cope better with that.

Solaris, for example.

No cluster differences

gs/base/stdint_.h


2015-02-20 11:30:26 +0000
Chris Liddell <chris.liddell@artifex.com>
5c7b12b0bfd990329b6ecd009afbfc4f037e8b48

Cope with systems without strnlen.

We'll use strnlen in preference, but replace it with strlen if strnlen isn't available.

An example would be Sun cc on Solaris.

No cluster differences

configure.ac
gs/configure.ac


2015-02-18 15:57:29 +0000
Chris Liddell <chris.liddell@artifex.com>
1e7626e4a9db58f9e5a531c04233bc8b04c52b1f

Bug 695836: add flag for MINGW binary file opening

MINGW, being a unix-like API on Windows, using the file handling gp_unifn.c,
but unlike "real" Unix systems, requires an extra flag for opening binary
files.

Add that conditional on being built for MINGW

No cluster differences.

gs/base/gp_unifn.c


2015-02-16 10:13:58 +0000
Ken Sharp <ken.sharp@artifex.com>
f27d8957a6afde54c0105fe6599b175b7ec46540

Increase the linewidth used in idiom recognition of artificial bold text

Bug #695835 "Artificially emboldened fonts not showing up as bold in output PDF"

I believe this to be an Acrobat display bug, different versions of Acrobat
display the result differently, modifying the viewer preferences alters the
boldness significantly, and opening another file also alters the displayed
boldness.

However, I've opted to increase the linewidth we are using slightly. This
results in a few single pixel differences in our output. At 600 dpi the
test file is slightly bolder, about 1 pixel worth.

Comparison against the PostScript output is slightly complicated, because
the 'fill and stroke' results in slightly smoother output than the 'draw
the glyph 4 times' approach. However, there is little significant difference
as far as I can tell.

gs/Resource/IdiomSet/Pscript5Idiom


2015-02-12 17:09:40 -0700
Henry Stiles <henry.stiles@artifex.com>
7b3af6d5075a23cd6b5ef199e7680be8ab1045a6

Fixes bug #695833 to correctly select the Line Printer font instead of
Courier.

We need to have a LinePrinter font entry in the font table for each
symbol set supported by LinePrinter. We were missing an entry for the
PS text (10J) symbol set.

pl/plftable.h


2015-02-12 13:24:58 +0000
Ken Sharp <ken.sharp@artifex.com>
4264a0716724dbd7fd8e35a53572e262658d5979

Fix error recovery after invalid type 1c (CFF) font

Bug #695819 "Ghostscript cannot process font stream"

The PDF file (which purports to have been produced by an earlier version
of Ghostscript) contains a CFF font which has en empty names index.

Ghostscript, not unreasonably, treats this as being 'the first byte of the
name is 0x00' which indicates a font which has been deleted from the
FontSet. This means that the embedded FontSet contains no fonts.

Since there are on fonts, we obviously can't use the font stream, and so
we enter an error recovery process. This exposes a problem specific to
this type of font, failing in this fashion, which left the operand stack
in a condition where we were unable to recover from the error.

This commit detects the error condition at an earlier stage and prevents
the change to the operand stack, which allows the missing font to be
substituted, and the file runs to completion.

No differences expected.

gs/Resource/Init/pdf_font.ps


2015-02-10 10:30:53 -0800
Michael Vrhel <michael.vrhel@artifex.com>
40e783f0274ede8a5a15caf878bd18cad1bfa690

Fix for crash issue in -dUseFastColor

The noncm link was storing the target device color mapping procs
and using those to map the colors. The problem is that some devices
(for example tiffsep) rely upon special device structures to
do the mapping. When we had a forwarding device like the overprint
device in front of the target, we were calling the target mapping
procs where we should be calling the overprint device mapping procs.
This commit fixes the issue.

gs/base/gsicc_nocm.c


2015-02-09 11:04:27 -0800
Michael Vrhel <michael.vrhel@artifex.com>
14ea68e33fa129addf3860e3bf760060aa100ce3

Fixes for named color replacement.

The sample code for named color replacement had several issues
that this commits fixes.

1) The memory allocations were not being done in non-gc memory.
2) There needed to be a release method to free the allocations
when we are done with the named color profile structure.
Since this is a "custom" profile, the release procedure for
a profile was added as a member variable to the profile structure.
3) The decision to use the named color profile was moved earlier
in the ghostscript color remapping logic. The ensures we
have better control and avoid unwanted multiple remaps.

Once the color is assigned values by the call to
gsicc_transform_named_color in gx_remap_named_color, note
that in gx_remap_concrete_devicen the transfer functions are applied.
Also note that in gx_remap_concrete_devicen we will end up doing
a possible ICC mapping of just the CMYK values from source CMYK to
destination CMYK via the call to devicen_icc_cmyk. The reason for
this is explained by the large comment in that part of the code.
If this remap is not desired, for example if gx_remap_named_color
assigned the CMYK values in the destination space already, then
this mapping should be disabled. The decision to enable or disable
is a design/customization decision of which the developer should be aware.

gs/base/gscdevn.c
gs/base/gscms.h
gs/base/gscsepr.c
gs/base/gsicc_cache.c
gs/base/gsicc_manage.c
gs/base/gxcmap.c
gs/base/gxcspace.h


2015-02-05 17:21:51 +0000
Ken Sharp <ken.sharp@artifex.com>
17131c7a7fdf9d8537c4715e538c49b29c8945a8

Improve high level devices handling of Forms

Bug #695805 "PostScript can defeat the code to spot PostScript forms being run multiple times "

High level devices (eg pdfwrite) already check Forms to see if they are
duplicates, and if so use the initial definition. However, this does not
improve performance, since the Form PaintProc still needs to be executed
for each instance of the Form.

This commit adds two new spec_op enums, and uses them to improve performance
as well, but *only* for high level devices.

After running a PaintProc, the PostScript .execform1 procedure now sends a
spec_op to the device requesting an integer ID to store in the Form. If the
device does not do its own form caching it will return -1, in which case
the PostScript will not store the value.

Each time a Form is executed, the PostScript code will look to see if we
have a non-null value stored for the Implementation key in the Form dictioanry.
If so, then we assume its a dictionary (ideally we should check, but this is
all tightly coupled code), pull the /FormID from it, and then send another
(different) spec_op to the device. On receipt of this the device simply
reuses its stored Form.

This absolves us from running the PaintProc again, which on some files can
have significant performance benefits. It also means that even Forms which
execute pdfmarks (as the original file does) will be recognised as the same
form, which the duplicate removal code cannot achieve.

The customer's test file runs in ~16 seconds now,producing a 4.3 Mb output
file, previously this produced an 81 Mb file and took around 20 minutes.

gs/Resource/Init/gs_lev2.ps
gs/base/gsform1.h
gs/base/gxdevsop.h
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfi.c
gs/devices/vector/gdevpdfx.h
gs/psi/zform.c


2015-01-23 09:48:50 +0000
Chris Liddell <chris.liddell@artifex.com>
be26bcf588c1dff9f8a867f764bb46b0d6389081

Update URW fonts to Jan 2015 release.

The families NimbusMono, NimbusRoman and NimbusSans have been augmented with
production quality Greek and Cyrillic glyphs. These correspond to our
substitutes for the PDF base 14 fonts

Lots of minor pixel level cluster differences, and
sumatra/664_-_accented_characters_missing.PDF

is progression with previously missing accented glyphs now printing

gs/Resource/Font/BookmanURW-DemBol
gs/Resource/Font/BookmanURW-DemBolIta
gs/Resource/Font/BookmanURW-Lig
gs/Resource/Font/BookmanURW-LigIta
gs/Resource/Font/CenturySchL-Bold
gs/Resource/Font/CenturySchL-BoldItal
gs/Resource/Font/CenturySchL-Ital
gs/Resource/Font/CenturySchL-Roma
gs/Resource/Font/CenturySchURW-Bol
gs/Resource/Font/CenturySchURW-BolIta
gs/Resource/Font/CenturySchURW-Ita
gs/Resource/Font/CenturySchURW-Rom
gs/Resource/Font/ChanceryURW-MedIta
gs/Resource/Font/NimbusMon-Bol
gs/Resource/Font/NimbusMon-BolObl
gs/Resource/Font/NimbusMon-Obl
gs/Resource/Font/NimbusMon-Reg
gs/Resource/Font/NimbusMonL-Bold
gs/Resource/Font/NimbusMonL-BoldObli
gs/Resource/Font/NimbusMonL-Regu
gs/Resource/Font/NimbusMonL-ReguObli
gs/Resource/Font/NimbusRom-Ita
gs/Resource/Font/NimbusRom-Med
gs/Resource/Font/NimbusRom-MedIta
gs/Resource/Font/NimbusRom-Reg
gs/Resource/Font/NimbusRomNo9L-Medi
gs/Resource/Font/NimbusRomNo9L-MediItal
gs/Resource/Font/NimbusRomNo9L-Regu
gs/Resource/Font/NimbusRomNo9L-ReguItal
gs/Resource/Font/NimbusSan-Bol
gs/Resource/Font/NimbusSan-BolIta
gs/Resource/Font/NimbusSan-Ita
gs/Resource/Font/NimbusSan-Reg
gs/Resource/Font/NimbusSanL-Bold
gs/Resource/Font/NimbusSanL-BoldCond
gs/Resource/Font/NimbusSanL-BoldCondItal
gs/Resource/Font/NimbusSanL-BoldItal
gs/Resource/Font/NimbusSanL-Regu
gs/Resource/Font/NimbusSanL-ReguCond
gs/Resource/Font/NimbusSanL-ReguCondItal
gs/Resource/Font/NimbusSanL-ReguItal
gs/Resource/Font/NimbusSanNar-Bol
gs/Resource/Font/NimbusSanNar-BolIta
gs/Resource/Font/NimbusSanNar-Ita
gs/Resource/Font/NimbusSanNar-Reg
gs/Resource/Font/PalladioURW-Bol
gs/Resource/Font/PalladioURW-BolIta
gs/Resource/Font/PalladioURW-Ita
gs/Resource/Font/PalladioURW-Rom
gs/Resource/Font/URWBookmanL-DemiBold
gs/Resource/Font/URWBookmanL-DemiBoldItal
gs/Resource/Font/URWBookmanL-Ligh
gs/Resource/Font/URWBookmanL-LighItal
gs/Resource/Font/URWChanceryL-MediItal
gs/Resource/Font/URWGothic-Boo
gs/Resource/Font/URWGothic-BooObl
gs/Resource/Font/URWGothic-Dem
gs/Resource/Font/URWGothic-DemObl
gs/Resource/Font/URWGothicL-Book
gs/Resource/Font/URWGothicL-BookObli
gs/Resource/Font/URWGothicL-Demi
gs/Resource/Font/URWGothicL-DemiObli
gs/Resource/Font/URWPalladioL-Bold
gs/Resource/Font/URWPalladioL-BoldItal
gs/Resource/Font/URWPalladioL-Ital
gs/Resource/Font/URWPalladioL-Roma
gs/Resource/Init/Fontmap.GS
gs/psi/psromfs.mak


2015-02-03 16:05:55 +0000
Chris Liddell <chris.liddell@artifex.com>
af9d47bf4ed5ebe42c1b2592a607bd891cd1dd92

Bug 695787: skip WOFF fonts in font scanning

As Ghostscript doesn't support WOFF fonts, skip them during the building of the
"native" fonts table - this prevents the pseudo-parsing from consuming large
amounts of memory and processor time pointlessly.

No cluster differences.

gs/Resource/Init/gs_fonts.ps
gs/Resource/Init/gs_ttf.ps


2015-02-02 13:31:32 +0000
Ken Sharp <ken.sharp@artifex.com>
8803294d1768a74a2ca3a1acc97f7def74752791

commit 23aab341f57c20974e4dfcb68abb13ce08c5e5a8 actually committed the wrong
code by accident, ooops!

This is the corrected test for a type 2 font being used. The comments in
the previous commit still apply, this isn't a 'fix' just a work-around to
avoid a crash.

gs/devices/vector/gdevpdtc.c


2015-02-02 11:52:49 +0000
Ken Sharp <ken.sharp@artifex.com>
23aab341f57c20974e4dfcb68abb13ce08c5e5a8

Noticed by chrisl while working on moving our installed base fonts to
CFF, if a type 0 font has an FDepVector which uses both a type 3 font, and
a base font (which is CFF) then we fail to process the condition where
we use one glyph from the type 3 and follow it with a glyph from the
type 2.

The problem seems to be that we get confused, we detect the error with the
CFF font, but instead of capturing it as a bitmap (fallback case) we end
up dealing with it as if we had started capturing a type 3 charproc. Of
course we didn't start capturing it that way, so that causes chaos.

In the long run this will need to be fixed properly (ie figure out why we
are ending the glyph with the current font being type 3, when it should be
type 2), but for now this prevents the GPF. When/if we do move to CFF fonts
for our base fonts, this will need to be revisited.

gs/devices/vector/gdevpdtc.c


2015-01-29 17:33:48 -0800
Ray Johnston <ray.johnston@artifex.com>
3af4b00ad39d7c3672f3967512d81b1f8ecf6bac

Fix some (probably not all) dependencies when the build has minimal devices.

The lib.mak was missing some dependencies, and pdf_main.ps depended on the
.pdfputparams which is only defined if the pdfwrite device is built in.
Tested with a build from: autogen.sh --with-drivers=ppmraw,pgmraw,pbmraw
which only has bbox and those devices.

gs/Resource/Init/pdf_main.ps
gs/base/lib.mak


2015-01-30 10:43:31 +0000
Ken Sharp <ken.sharp@artifex.com>
47178da0d32b82a40b75f9aa9684210ff4dc1d24

Remove the reference to -dLanguageLevel=1 in the man page.

Also remove the incorrect nonsense about language level 3 and so on, which
has never been correct, and some general tidying up. Also point out that,
despite the name of the scripts, PDF is an equally acceptable input.

Update the versions and dates and so on to reflect the edit.

gs/man/ps2ps.1


2015-01-28 08:34:08 -0800
Ray Johnston <ray.johnston@artifex.com>
704fcded8bb82dcbfad512ee8eec80e1d5655ded

Fix miscalculation of pattern size when 'has_tags' is true.

This fix was developed for customer 532 who uses tags. The 'has_tags'
passed in to gx_pattern_size_estimate is a boolean, so we should adjust
size for the extra tag byte, not the value (which doesn't have to be 1).

gs/base/gxpcmap.c


2015-01-23 17:32:36 -0800
Ray Johnston <ray.johnston@artifex.com>
8c015519af0f14ada59399a96d0f4ffc3c9e5ccd

Fix some debug statements that used NULL mem pointers.

gs/base/gxipixel.c


2015-01-22 08:35:39 -0800
Ray Johnston <ray.johnston@artifex.com>
c8cf49712712f288d5b956f36ecb285a39a2b134

Fix emprintf problem with previous commit

gs/devices/gdevplib.c


2015-01-21 13:41:35 -0800
Ray Johnston <ray.johnston@artifex.com>
cad213c2d188e7461322ee6f810684bea5358235

Fix BandHeight and segfault problems with plib device.

The BandHeight will be 0 initially to convey "set it automatically
if it isn't set on the command line. Only check once it has been
set.

Once past this a segfault was occurring because the mdev->line_ptrs
never was set. This seems to have been broken by commit c4357bef
caused by passing "mlines" into the device's setup_buf_device
rather than NULL in the call from clist_rasterize_lines (which
did fix another segfault).

Since regression doesn't test this device, I don't expect any
differences.

gs/devices/gdevplib.c


2015-01-20 16:01:07 +0000
Chris Liddell <chris.liddell@artifex.com>
f38db629f962a599693e13b572eef9ee64412800

Add the plib device family to build on Unix.

No cluster differences.

gs/configure.ac
gs/devices/gdevplib.c


2015-01-19 11:19:08 +0000
Chris Liddell <chris.liddell@artifex.com>
4d9083d4f20d53eda3ae129cd35d1947144db743

Commit the automake/autoconf/libtool derived files

For ijs the build is not expected to change, and if it does, it will be very
infrequent. So keeping the derived files in source control simplifies things.

No cluster differences

gs/ijs/Makefile.in
gs/ijs/compile
gs/ijs/config.guess
gs/ijs/config.sub
gs/ijs/configure
gs/ijs/install-sh
gs/ijs/libtool
gs/ijs/ltmain.sh
gs/ijs/missing


2015-01-19 11:15:02 +0000
Chris Liddell <chris.liddell@artifex.com>
c09cc83e53c9a1269e0c64fea94d9ceeafa9a494

Remove automake version specific tests/use

The script does unpleasant things which can cause us to attempt to use a
specific version of automake, which should not really be needed these days.

So we now just check that the automake version is greater than or equal to the
version we require.

The old method can still be accessed by invoking autogen.sh thus:
USE_OLD=yes ./autogen.sh

Also, reset the the minimum automake version to 1.6.

No cluster differences.

gs/ijs/autogen.sh
gs/ijs/configure.ac


2015-01-21 22:34:40 +0000
Chris Liddell <chris.liddell@artifex.com>
b2d6985a0fdc20c9775e3caa2f90af039cc5e2f5

Remove spurious debug code.

No cluster differences.

gs/Resource/Init/gs_type1.ps


2015-01-21 22:08:39 +0000
Chris Liddell <chris.liddell@artifex.com>
da65b995be88cfcbef7c99dbae1d15f5eb14122d

Bug 695794: fix invalidaccess with some Type 1 fonts

Use superexec to execute the .growput to enter the flag into the font dictionary
that indicates we've already applied the glyph mapping augmentation. Handles
the case that the font dictionary already readonly.

No cluster differences.

gs/Resource/Init/gs_type1.ps


2015-01-20 09:22:31 -0800
Ray Johnston <ray.johnston@artifex.com>
38501651d81ae41f6505e7f457f46a975648c63a

Fix C stack overflow with psdcmykog.

The commit fe0b8fcf increased the gp_filename_sizeof to 4096, and
this increased the stack usage for cmykog_process_arg_t by enough
to cause stack overflow on Windows.

gs/devices/gdevcmykog.c


2015-01-20 09:00:31 -0800
Ray Johnston <ray.johnston@artifex.com>
a8a479e6104a509de49b0d10d8aae6cc4cd4809a

Clean up gx_pattern_size_estimate to clamp at max_int

When the pattern had transparency, we had conditional assignment to
limit at (max_int * ~0xFFFF), but not otherwise. No known defect.

gs/base/gxpcmap.c


2015-01-19 09:15:47 +0000
Chris Liddell <chris.liddell@artifex.com>
2cc3a1779d832fc84b36f0ebb20336bbdad17352

Bug 695774: Fallback for glyph with degenerate bbox

If a glyph has only one very narrow feature, the bbox can end up with either
the width or height of the bbox being 0, in which case no raster memory is
allocated and no attempt is made to render the glyph. This is less than ideal
when the drop-out compensation in the rendering code would actually result in
the glyph being rendered.

Normally the coordinates for the bbox are rounded (which is technically
correct). Now, if that results in the width or height being 0, we'll
then try explicitly rounding up/down, providing a sort of naive whole glyph
drop-out compensation.

The same change has been included upstream and will be in the next scheduled
Freetype release:
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=942aa5ff

This causes a large number of low resolution differences on cluster, all
progressions where glyphs like dash ('-'), underscore ('_') and vertical
bar ('|') were dropping out entirely, and are now printing.

gs/freetype/src/raster/ftrend1.c


2015-01-17 10:58:33 +0000
Ken Sharp <ken.sharp@artifex.com>
2c14b47453cc4c4bc6d6a97af073ae0145f107dd

txtwrite - properly terminate 'char' tags

Bug #695788 "txtwrite textoutput=0 XML file"

The 'char' tag was being terminated with a '>' instead of a '/>'.

Reported, and the offending code isolated, by Petko Lukov, who offered to
create a patch, but the change is so trivial I simply went ahead with it.

No differences expected, cluster doesn't test txtwrite.

gs/devices/vector/gdevtxtw.c


2015-01-17 09:01:00 +0000
Chris Liddell <chris.liddell@artifex.com>
8a72aff8e6f1009cce8cf0ed535baf3d6c362fb4

Slience a (benign) compiler warning about missing return

No cluster differences.

gs/psi/dxmain.c


2015-01-16 10:27:51 -0800
Ray Johnston <ray.johnston@artifex.com>
7882030e49b1309c6d8ccc96b799c8eddb0cc10d

Improve error message when required OutputFile not specified.

Bug 695767. Also improve the formatting when there was a filename
by adding ' around the filename,

gs/base/gsdevice.c


2015-01-16 15:26:56 +0000
Chris Liddell <chris.liddell@artifex.com>
66eafeeec0288a96dde38ecb406961c869ce06e4

Move bbox.dev to be immediately after the x11 devs

So that in pcl and xps on Unix, if we aren't including the x11 devices, we'll
default to bbox.

No cluster differences

main/pcl6_gcc.mak


2015-01-16 15:18:23 +0000
Chris Liddell <chris.liddell@artifex.com>
d1ef180b6cad83dde54843e028accb22222e6f39

Explicitly check for both libcups and libcupsimage

No cluster differences.

gs/configure.ac


2015-01-16 09:40:27 +0000
Ken Sharp <ken.sharp@artifex.com>
6e1e22c7643ee2e0b28a702a3ed9fc5b8f3a96b0

NTFS - fix some memory problems Bug 695752

Bug #695752 "gp_enumerate_files_close leaks some memory"

This appears to be a simple oversight in the original commit, a piece of
allocated memory was not freed, the 'free' call was commented out.

Noticed in passing; if the allocation of the file pattern fails, we were not
freeing the file or directory enumerators, leading to a memory leak as
well.

No differences expected (cluster does not test Windows file system)

gs/base/gp_ntfs.c


2015-01-15 16:16:59 +0000
Ken Sharp <ken.sharp@artifex.com>
d9168fef51ff878e58834b38d620f4afc9fa66c2

pdfwrite - fix compiler warning

The compiler complained that pres could be NULL. In fact it should never be,
it *should* be the same as pres1, but we ought to be dereferencing pres1 here
anyway, not pres, so we make that change, just in case.

gs/devices/vector/gdevpdfu.c


2015-01-14 10:51:21 -0800
Michael Vrhel <michael.vrhel@artifex.com>
65b46878adabda061b67670dfd81899acca2cea1

Fix warnings from f02d0a5

For some reason no warnings came up during the cluster push. Thanks
to those who fixed a couple. Hopefully this fixes the rest.

gs/base/gximdecode.c
gs/devices/vector/gdevxps.c


2015-01-13 12:31:40 -0800
Ray Johnston <ray.johnston@artifex.com>
48eb76b5b774772e39b0a163a9a3c1d06eafbdd4

Allow Orientation pagedevice parameter to control the FitPage rotation

With this change, Orientation is no longer ignored except for devices
that support pdfmark where it must be 0 (e.g., pdfwrite). Now with
-dFitPage, -c "<< /Orientation 0 >> setpagedevice" will use either 0
or 90 degree rotation, while -c "<< /Orientation 2 >> setpagedevice"
will rotate either 180 degrees or 270 degrees.

Note that Orientation 2 will invert a page (rotate by 180) if 270
degree rotation is not needed for the best fit.

Orientation will also control which way is "up" without -dFitPage,
but may result in clipping.

gs/Resource/Init/pdf_main.ps


2015-01-14 15:01:24 +0000
Chris Liddell <chris.liddell@artifex.com>
6213ab0b0c3229f1744e404e0d673d36f62bd6cd

Treat a couple of compiler warnings as errors.

Treat declaration-after-statement and return-type warnings as errors when
building with gcc.

No cluster differences.

configure.ac
gs/configure.ac


2015-01-14 15:01:02 +0000
Chris Liddell <chris.liddell@artifex.com>
d18f698b8e7176653d096b2e554eeff713be4182

Fix a missing return type for a function.

gs/devices/vector/gdevxps.c


2015-01-14 13:21:54 +0000
Ken Sharp <ken.sharp@artifex.com>
d7bffde12e3b9856e271af3b50254fd93d98b3d3

Fix 'warning: ISO C90 forbids mixed declarations and code'

Commit f02d0a5 added code which declares variables in the body of a
function. This is not permitted in C90 (or C89), is contrary to the coding
style for Ghostscript and fails to compile Ghostscript under Visual Studio.

In addition 'zip_close_all_archive_files()' did not have a return value on
success which led to random return values and a number of regression files
failing.

Moved the variables to the start of the functions (removing const as required)
and added a specific return code on success.

Now compiles under Windows, does not throw as many warnings on Linux and
does not cause spurious regression failures. There are still many warnings
produced by gcc, EG:

./devices/vector/gdevxps.c:1771:9: warning: unused variable 'count' [-Wunused-variable]
./devices/vector/gdevxps.c:1770:9: warning: unused variable 'code' [-Wunused-variable]

The author of the commit should address those separately.

gs/base/gximdecode.c
gs/devices/vector/gdevxps.c


2014-12-15 12:15:14 -0800
Michael Vrhel <michael.vrhel@artifex.com>
f02d0a5067a0970aa5e9c6b4f9cd08956485447e

Add support for encoded source images with xpswrite device. Fix for bug 695698

Also fixes 695754 and 695680.

The xps format does not allow for the image data encodings that PDF source files can
create. Hence we have to decode the data prior to writing out to our TIFF file.
The clist image code had static methods for doing the decode during color monitoring. These
methods were re-factored to work on a new structure that are now member variables for
the xpswrite image enum structure and the clist image enum structure. The methods and
the structure definition were placed in their own file gximdecode.c/h

Also this adds support for images in indexed, CIELAB, DeviceN and separation color spaces.

Finally, images are stored in a temp file during creation and then copied into the zip
archived, releasing the image temp file. ICC profiles are written directly from memory
to the zip file. This avoids having lots of temp files around for each image that is
created. A similar process needs to be done for other parts of the xps document. With the
current architecture of having a temp file open for every "file" in the package we would
not be able to create something larger than 512 pages on windows due to the limit on
the number of open files.

gs/base/gxclimag.c
gs/base/gximdecode.c
gs/base/gximdecode.h
gs/base/lib.mak
gs/devices/devs.mak
gs/devices/vector/gdevxps.c
gs/ghostscript.vcproj


2015-01-13 11:19:53 +0000
Ken Sharp <ken.sharp@artifex.com>
3e7115492c378ffa324c0a083244a785a6a61f82

pdfwrite - optimise pdf_foget_resource with CharProc resources

Bug #695778 "Long delay converting .ps file to .pdf file"

The specimen file uses glyphshow to draw a huge number of 'characters',
these turn out to be bitmaps which, taken together create the page. Each
page defines and at the end specifically undefines a type 3 font and the
glyphs are stored in this font.

Since PDF has no equivalent to glypshow we store the glyphs in multiple
type 3 fonts, resulting in around 10 times as many fonts. The creation and
storage of the fonts and glyphs is quite slow.

However, we start off unaware that this is a glyphshow operation, so we
start by attempting to capture the type 3 CharProc. Its not until we get
to the actual capture of the bitmap that we discover we cannot handle the
glyph like this. That means we have to discard the CharProc we had begun,
and remove it from the list of stored resources.

Now resources are stored in 'chains' which is a simple way of limiting the
number of searches. We hash on the resource ID and pick the chain based on
that.

The first problem was that pdf_forget_resource was not using the hash, it
was checking every entry in every chain, in effect checking all the entries
of a given resource type. Even if it found a match, it continued checking
the remaining chains! As the number of stored CharProcs (we still store
the glyphs as CharProcs, but in a different font) increases, the time taken
to exhaustively check all the glyphs increases.

Here we fix that by starting from the correct chain based on the hash of
the id (if its 0 we start at the first chain, so if we haven't allocated an
ID we check all the entries). When we find a match we return immediately
instead of merely exiting the *inner* loop.

The second problem is that we don't allocate an ID for CharProcs initially.
This is fixed by storing the ID which we used temporarily as an argument
to pdf_enter_substream.

Taken together these speed up this file by a factor of ~8.

No differences expected.

gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdti.c


2015-01-13 09:28:37 +0000
Chris Liddell <chris.liddell@artifex.com>
7d97b54d767627d1d88ea026c3d3accd11cb670f

Bug 695783: correct cups return of string parameters

The cups device was using param_string_from_string() to return string parameters
allocated in the device structure in its get_params method. Of the many problems
this could cause, it came to light due to the same parameter being sent through
put_params thus causing strncpy() to attempt to copy a string to itself, causing
a segfault.

Changing to the correct param_string_from_transient_string() way to return such
strings resolves the problem.

No cluster differences.

gs/cups/gdevcups.c


2015-01-12 11:10:04 +0000
Chris Liddell <chris.liddell@artifex.com>
f29420b18ba7abedb649d0352fb1b16adae1d4a5

Bug 695743: LCMS: Fix a macro clash on SNONE

Partial patch pulled from Marti's github repo:
https://github.com/mm2/Little-CMS/commit/5bc4f52f

(only the macro clash fix).

No cluster differences.

gs/lcms2/src/cmscgats.c


2015-01-12 09:56:01 +0000
Chris Liddell <chris.liddell@artifex.com>
84d749a65e509c31805a8f99d1aad78c013f13e6

Bug 695764: allow compiler to be overridden

Allow the C compiler to set by the configure script.

No cluster differences.

common/gccdefs.mak
config.mak.in
configure.ac


2015-01-12 08:44:46 +0000
Chris Liddell <chris.liddell@artifex.com>
e17fcc029c96949982b8f01c6e649b87dceab1be

Bug 695772: account for clist icc_table being shared

When multi-thread rendering is used (but not background printing), the icc_table
is shared between all the render thread devices and the 'parent' device in the
interpreter thread - but it is not reference counted. We rely on the fact that
the device in the interpreter thread will exist before, and persist past the
death of the rendering threads.

So, when dismantling a rendering thread device, null the icc_table entry so
it doesn't get erroneously freed.

No cluster differences.

gs/base/gxclthrd.c


2015-01-09 11:25:01 +0000
Chris Liddell <chris.liddell@artifex.com>
30abb3d5d5fbf9cf67d4ff691e898c8b29e39a56

Add automake option to make dist "self contained"

The automake default is to symlink to a few scripts ('compile', 'missing' etc)
in the current system's automake install. That results in a configuration
reliant on automake being installed, and the same version, for a build.

Add the '--copy' automake option so the script files are copied rather than
linked, so we get a self contained configure/make/install setup.

No cluster differences.

gs/ijs/autogen.sh


2015-01-09 11:23:34 +0000
Chris Liddell <chris.liddell@artifex.com>
9961f351a3c71949da49eb75b65560028fb8272e

Bug 695148: remove spec PDF and PS from clean list

As the IJS spec hasn't changed in ages, we'll just keep the PDF and PS files
of the spec in git, so no need to remove them with a "make clean".

No cluster differences.

gs/ijs/Makefile.am


2015-01-07 07:57:36 -0800
Ray Johnston <ray.johnston@artifex.com>
d78594c1982682a06c9fb8fc7f2ea746938a93cc

Fix problem in xps_zip_alloc_items caused by previous commit: 188c7b0

When the allocation succeeded, nothing was returned.

xps/xpszip.c


2015-01-03 16:00:16 -0800
Ray Johnston <ray.johnston@artifex.com>
188c7b05a5c232ba43e6b3172023498f7aa72c70

Fix segfault with ppmraw -r300 from fts_06_0626.pdf.xpse when allocation fails

The gxps had numerous places where allocation failures were ignored,
writing to RAM at offsets from 0 (NULL). This no longer fails, but the
fixes are not yet complete. Running a memento build with the parameters:
MEMENTO_SQUEEZEAT=1 gxps -o /dev/null -sDEVICE=ppmraw in.xps

xps/xpsdoc.c
xps/xpsfont.c
xps/xpsgradient.c
xps/xpshash.c
xps/xpsimage.c
xps/xpsjpeg.c
xps/xpsjxr.c
xps/xpspath.c
xps/xpspng.c
xps/xpsresource.c
xps/xpstiff.c
xps/xpsxml.c
xps/xpszip.c


2015-01-02 22:48:56 -0800
Ray Johnston <ray.johnston@artifex.com>
f553eec30efa8cbefdc3c3635e090abb915a1a9d

Fix bug 695373: xpswrite leaves temp files on Windows.

There is a recent addidtion of a gp function to open a temp file that
will be deleted upon close: 'gp_open_scratch_file_rm'. The method of
'unlink' after open does not work on Windows. This function is platform
specific and works on all supported platforms even if the process crashes.

Also get rid of confusing error messages. PageSpotColors is now only
given to devices that support it (pdf_main.ps) and NumRenderingThreads
and BGPrint are ignored for vector devices (gdevvec.c).

gs/Resource/Init/pdf_main.ps
gs/base/gdevvec.c
gs/devices/vector/gdevxps.c


2014-11-24 11:13:33 -0800
Ray Johnston <ray.johnston@artifex.com>
64f9cafcfc594ddaa1d1981a16f45fce25e4fb18

Fix BGPrint=true SEGV and slowdown due to commit 9108db2

Bug 695669:
The BGPrint problem was due to using the fname afer freeing it but the
'fake_path_to_file' logic needed the fname in order to find the real
file to close.

Tail of commit 6ecc8536:
Also the original cfname and bfname (ocfname and obfname) were copied
using strnlen so the trailing NULL wasn't copied resulting in UMR being
used for the close/delete.

Tail of bug 693121:
The performance of unbuffered I/O is slow, seen on many files, but
a good example is: tests/df/Bug6901014_Fourth_crash_signature_testcase.pdf
with params: -sDEVICE=pbmraw -o /dev/null -r300 -dMaxBitmap=0

The fix for this is to add a read cache. This caching method in intended
to also be used by the memory based clist logic (TBI).

With the cache, the performance on the above goes from 40 seconds down to
4.6 seconds, and with -dBGPrint=true reduces to 3.8 seconds (which crashes
prior to this fix).

gs/base/gdevprn.c
gs/base/gxclfile.c
gs/base/gxclist.c


2014-12-30 09:18:31 -0700
Henry Stiles <henry.stiles@artifex.com>
7631204934e5d8b0bcdb13d8691370365eb84b2b

Add directory entry configuration support to fix a broken ghostpdl
build after a Mac upgrade to Yosemite.

configure.ac


2014-12-23 16:01:05 +0000
Ken Sharp <ken.sharp@artifex.com>
35bb14eaf871b6a7e41e17688bcc41a1fb4da595

pdfwrite - add 'Launch' Actions

Bug #695715 "Launch action link annotations removed after GS processing"

Add Launch actions to the PDF interpreter, for both annotations and
outlines.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-12-23 13:53:27 +0000
Ken Sharp <ken.sharp@artifex.com>
fde4b9b183a140b8906874d0bf56d258b488d4b9

pdfwrite - free copied base fonts on exit

Bug #695753 "Segfault in gs_purge_font_from_char_caches_forced with -Z@"

The problem here is that we free copied fonts when we free the associated
FontDescriptor (because until then we need the copied font). However, if
we have a 'base 14' font, or other font which is not embedded, we do not
create a FontDescriptor, and so never free the font copy we take when the
font is used.

This later causes a problem because when the garbage collector frees this
font copy it is still pointing to a font cache which no longer exists.

This commit tests to see if a FontDescriptor is associated with a font when
we free the (PDF) font. If it is not then we free the copied font there and
then, as well as the ancillary bytes used for the font name etc.

No differences expected.

gs/devices/vector/gdevpdtf.c


2014-12-23 13:08:08 +0000
Ken Sharp <ken.sharp@artifex.com>
bd2e9c2c30b0696ca9f929637193aaef38951e6a

follow up to commit dc2c3634aeae6634b130e124b1f0997f17ee3141

Separate GoTo and GoToR processing for links as well as Outlines

gs/Resource/Init/pdf_main.ps


2014-12-22 11:29:49 +0000
Ken Sharp <ken.sharp@artifex.com>
01b9c47eefd7f88195e71f877e5ea44f183a0067

pdfwrite - when writing Names array use better method to find /Last

Bug #695704 "GS 9.15 (still) breaks *something* in hyperref-generated pdf BOOKMARKS"

The find_last_dict_entry code should have returned the same results as for
find_next_dict_entry, but it clearly didn't, resulting in effective
truncation of the Names array.

Simplified the code here by using find_next_dict_entry in a loop to locate
the last entry. This should mean we cannot be out of sync, the code is simpler
and easier to follow.

No differences expected.

gs/devices/vector/gdevpdfo.c


2014-12-22 10:47:22 +0000
Ken Sharp <ken.sharp@artifex.com>
dc2c3634aeae6634b130e124b1f0997f17ee3141

pdfwrite - separate GoTo and GoToR processing

Because we convert any named destination in a GoTo to a specific internal
destination, we cannot handle GoTo and GoToR in the same way. Here we
split the two again, and this time add a comment so we don't end up merging
them again by mistake.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-12-20 10:57:39 +0000
Ken Sharp <ken.sharp@artifex.com>
2c525aa076d7094fa487621602b8e326c58eeabe

pdfwrite - improve Goto and GoToR handling

Bug #695747 "git produces broken pdf from pdfTeX output"

The original code for generating pdfmarks from the equivalent annotations
in a PDF file did not properly create an Action dictionary, which caused
/D and /Dest entries to be removed.

Here we handle this more cleanly, and properly create the Action dictionary

NB for ps2write this relies upon commit b5a4f24141ab47b5ba2b7b3dff938ba30a8a908a
being present, in order to deal with the empty objects produced by ps2write.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-12-20 10:53:28 +0000
Ken Sharp <ken.sharp@artifex.com>
b5a4f24141ab47b5ba2b7b3dff938ba30a8a908a

ps2write - handle empty object definitions

object definitions such as:

5 0 obj
endobj

cause errors. Handle this by checking in /endobj to see if the stack count
is 1 (only the object number is present) and if so, do not attempt to
define the object.

gs/devices/vector/opdfread.h
gs/lib/opdfread.ps


2014-12-19 13:10:03 -0700
Henry Stiles <henry.stiles@artifex.com>
7df6f9570c00c34a3e1d6c74d66186a371208f0e

Integrate Ken Sharp's solution to preserve PCL transparent text in
pdfwrite to fix bug #695731.

PCL characters are rendered transparently when the current color is
white and pattern transparency is on. Usually this is done by simply
not printing or rendering the effected text. For high level devices
like pdfwrite we try to preserve the original intent of the source
document and include the text and transparency setting in the output.

pcl/pcl.mak
pcl/pctext.c


2014-12-19 15:31:24 +0000
Chris Liddell <chris.liddell@artifex.com>
9b3669dbcd3d29cd212e9961fcfc7b98780aa408

Add link to description of "Vienna" naming style

After a discussion on IRC: a summary of the "Vienna naming style" is actually
later in the document, this just adds a link between the early reference and
the fuller summary.

No cluster differences.

gs/doc/Ps-style.htm


2014-12-18 17:12:49 +0000
Chris Liddell <chris.liddell@artifex.com>
09def28ae012fc0e1b4f65ea55b19639c7737bc9

Bug 695750: fix icc link cache leak when freeing clist devices

No cluster differences.

gs/base/gdevprn.c


2014-11-24 22:47:15 -0700
Henry Stiles <henry.stiles@artifex.com>
5ddbec6f11792e2fa974c95924a984f876a9a705

Simplify rectangle output to be vertical and horizontal lines instead
of general lines.

The vertical and horizontal line commands take 1 argument resulting in
more compact XPS and we'd expect it to be faster when rendered.

gs/devices/vector/gdevxps.c


2014-12-18 11:35:44 +0000
Ken Sharp <ken.sharp@artifex.com>
8e196062593b295421b869db9d5cd9ab22f7205e

pdfwrite - some changes to text handling for Tr 3

Bug #695731 "PCL interpreter doesn't send text to the graphics library if its not visible."

Altering the PCL interpreter to set the Text rendering mode to 3 for
'invisible' text demonstrated a few problems in pdfwrite.

1) If the last character drawn was in Tr 3, and we buffer some new text in
Tr mode 0, but we are inside a gsave, and the outer state is Tr 0, then when
we restore back to the Tr 0 the mode is not emitted for the buffered text. Leaving
it as Tr mode 3. To fix this (and potentially other similar graphics state
problems) we now call sync_text_state when we reset text, this will
potentially flush the text buffer as well.

2) We were not using the text rendering mode from the graphics state when
falling back to a type 3 bitmap font, because the character code was out
of range (falling back for other reasons *did* preserve it).

This commit fixes these two problems.

Because of the change to text flushing some text is being drawn 1 pixel different
in location, presumably due to rounding differences, I've reviewed these
and they look fine to me.

gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdti.c


2014-12-17 20:48:42 +0000
Chris Liddell <chris.liddell@artifex.com>
06a462093e4145073a61e6ca62aabbb343e39fa1

Bug 695745: apply resourcestatus hook only once.

pdfwrite requires that Type 32 fonts be disabled, and it does it by hooking
the resourcestatus operator. The problem is, because we always append
to the operator table, if we string a number PS files together from the
PScript5.dll, we can end up overflowing the operator table by repeatedly
doing the resourcestatus hook.

This just puts a boolean into systemdict to note that we're already applied
the hook, and there don't do it again.

No cluster differences.

gs/Resource/Init/gs_pdfwr.ps


2014-12-15 08:21:18 +0000
Ken Sharp <ken.sharp@artifex.com>
07150250834717499b74c87d00a8dc52599d33ec

pdfwrite - pass imager state through coloured patterns as well

commit eef2764 passed the imager state through to the underlying routines
for uncolored patterns. This commit extends the same change to include
coloured patterns.

No differences expected.

gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfg.h
gs/devices/vector/gdevpdfv.c


2014-12-13 12:24:11 +0000
Ken Sharp <ken.sharp@artifex.com>
3570b4830e7f54f3a057176bc01db04ec311fe23

pdfwrite - increase predefined minimum CompatiblityLevel

To avoid having to create V2 profiles, increase the minimum value of
CompatibilityLevel in the predefined PDFSETTINGS to 1.5

No differences expected

gs/Resource/Init/gs_pdfwr.ps


2014-12-13 11:16:08 +0000
Ken Sharp <ken.sharp@artifex.com>
eef2764f3f9ab6dac88ea6720a05693c1d19af43

pdfwrite porpagate the imager state through the pdfwrite Pattern code.

Bug #695733 "Error using pattern under odd conditions"

If we set UseCIEColor, so that all colours are converted into CIEBased spaces,
*and* we set CompatibilityLevel < 1.5 so that we require to convert ICCBased
profiles to V2, and then use a Pattern colour space, pdfwrite throws an
error.

This is because we were not propagating the image state through the pattern
code, and the new colour code requires the imager state in order to generate
a V2 ICC profile for inclusion in the PDF file.

Here we simply pass the imager state through for use.

No differences expected

gs/devices/vector/gdevpdfc.c
gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfg.h
gs/devices/vector/gdevpdfv.c


2014-12-12 13:09:43 -0800
Michael Vrhel <michael.vrhel@artifex.com>
e153528e1f5044d2018284fbf2eea45b545232fe

xpswrite device: fix for missing images.

Force vector device to do new path as the clip path is the image path.
I had a case where the clip path ids were the same but the CTM was changing
which resulted in subsequent images coming up missing on the page. i.e. only
the first one was shown.

gs/devices/vector/gdevxps.c


2014-12-12 10:20:31 -0800
Michael Vrhel <michael.vrhel@artifex.com>
36c89af1edf269fe68f61c48326ff257862e274d

Fix for broken make file introduced in 878ef4d48a0aebc9354ccd09443a1a52ad93c9a0.

When adding the libtiff capability into the xpswrite device, I failed to update the devs.mak
file. This broke the Windows release 64x build. Not sure why the other platforms were also
not broken. Likely something is not getting cleaned up during a clean and rebuild.

gs/devices/devs.mak
gs/devices/vector/gdevxps.c


2014-12-11 12:07:15 +0000
Chris Liddell <chris.liddell@artifex.com>
27ce88cce7024691f292071cb602c119afc91f61

Bug 694509: Fix file name "building" for resources

After we'd created a candidate file name, there was a spurious "exch" in
place before we actually tried to validate the file name.

So, instead of "<path-to-resources>/<Resource Category>/<Resource Instance>"
being passed to .libfile, we actually passed the Postscript "path":
"<Resource Category>/<Resource Instance>"

Simply removing the exch seems to resolve this bug for me.

No cluster differences.

gs/Resource/Init/gs_res.ps


2014-12-05 13:59:31 +0000
Chris Liddell <chris.liddell@artifex.com>
dbcb29d2508de6ea997cf07d0987c107cd754cfb

Bug 695711: Resolve issue with relative paths for FONTPATH

Check whether a "lib" file exists, and whether we are allowed to open it,
before we try to open it.

This reverts ""starting_arg_file" should only apply once." (commit
407cc61e87b0fd9d44d72ca740af7d3c85dee78d).

Which caused problems with, for example, the "-sFONTPATH=..." option when the
path is relative rather than absolute.

No cluster differences.

gs/psi/imainarg.c
gs/psi/zfile.c


2014-12-04 08:24:32 +0000
Chris Liddell <chris.liddell@artifex.com>
ac4bfb62efdef25bf6d60c7f6a985dc6344891ca

Bug 695712: Revise glyph name map generation for TT fonts

Reinstate the unicode cmap and formatted "uniXXXX" glyph name methods of
finding glyph name maps, but in a more efficient method than the original
implementation.

No cluster differences.

gs/Resource/Init/gs_ttf.ps


2014-12-11 14:45:36 +0000
Ken Sharp <ken.sharp@artifex.com>
2207f06c5647e4308622733df854e49e2d48c97f

Handle a 'q' during the course of a 'W.....n' sequence

Bug #695723 "Inverted images when converting PDF to Tiff (B&W)"

The 'W' (and W*) operators are unlike their PostScript equivalents, and all
other PDF operators, they don't take effect immediately they simply add to
the clip path and produce a new clip path. Not until the 'n' is executed do
they actually apply the clip path. The Ghostscript PDF interpreter handles
this by accumulating the path operations (W/W*) until a 'n' is encountered.

Normally nothing else would need to be done, but because we've seen broken
PDF files that change the graphics state while accumulating a clip, and we
know that Acrobat ignores these, we have to track this. We do this by using
a dictionary.

So each graphics state operator checks the current dictionary to see if we
are inside a 'W' context and if so emits a warning and drops the change.
Again, so far so good.

However, the 'q' starts a new dictionary (pushing the existing 'W' one back
one level), which means that the 'n' operator closes that new dictionary
instead of the one it should close, and that brings the 'W' dictionary back
to the front.

Now when we execute the '1 1 1 rg' it looks at the dictionary and says "aha,
we are in a 'W' state, so ignore this".

This commit has the 'q' operator check to see if we are in a 'W' context. If
we are we copy the context dictionary to the stack, and close it. Then we
start the q 'nodict' dictionary. Finally we reopen the 'W' dictionary from
the stack. Now the 'n' will correctly close the 'W' dictionary, leaving the
'nodict' in its place.

No differences expected.

gs/Resource/Init/pdf_ops.ps


2014-10-31 13:30:04 +0000
Chris Liddell <chris.liddell@artifex.com>
813dc08154a525e5acca20b5da446eb58199680f

Update jbig2dec version and CHANGES file

No cluster differences

gs/jbig2dec/CHANGES
gs/jbig2dec/config_win32.h
gs/jbig2dec/configure.ac
gs/jbig2dec/jbig2dec.1


2014-11-19 15:02:22 +0000
Chris Liddell <chris.liddell@artifex.com>
66710da50af90cca72c2c8ea4942f3c4a23c9e5b

Bug 695688: improve cidfmap record validation.

The previous record validation only checked for valid substitutions when the
substitution referenced a TTF file (and removed the mapping if the TTF file was
not available). It ignored name to name mappings.

This revision adds validation to the name to name mappings, again removing
ones found to be invalid.

No cluster differences.

gs/Resource/Init/gs_cidfm.ps


2014-09-24 12:30:27 -0700
Michael Vrhel <michael.vrhel@artifex.com>
878ef4d48a0aebc9354ccd09443a1a52ad93c9a0

Add high level image handling to xpswrite device.

This adds the ability to create high level image content with the XPS write device.
It includes the writing of the ICC profile for the image and will support gray, rgb,
and cmyk images. Currently it only supports 8 bit per color channel bit depth.

Conflicts:
gs/devices/vector/gdevxps.c

gs/base/gsicc_cache.c
gs/base/gsicc_cache.h
gs/base/gsicc_create.c
gs/devices/vector/gdevxps.c
gs/ghostscript.vcproj


2014-11-18 09:16:05 +0000
Ken Sharp <ken.sharp@artifex.com>
a476643d942cfbcc6f68e7470e0d8425d31435ce

Documentation - remove some odd switches from examples in ps2pdf.htm

gs/doc/Ps2pdf.htm


2014-11-17 11:33:42 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
7d5a454da233c45775f640f251cec5c035e1ee55

Minor fixes to clusterpush documentation (done primarily to force an update of md5sums).

gs/toolbin/localcluster/clusterpush.pl
gs/toolbin/localcluster/clusterpush.txt


2014-11-17 14:22:44 +0000
Ken Sharp <ken.sharp@artifex.com>
abcaeaace08efa5d1596ef6a50f3d809d0b07a4a

pdfwrite - remove the force to the old CMS for PDF/A-1

Before we could guarantee a V2 ICC profile we forced the CMS to be the old
version for PDF/A-1. Now that we can guarantee a V2 profile this is no longer
required, and is removed here.

No differences expected.

gs/devices/vector/gdevpdfp.c


2014-11-14 12:15:45 -0800
Ray Johnston <ray.johnston@artifex.com>
4a37526a0606a29f0f0a86cd4b815ec7d966a1a0

Improve performance of PDF TJ operator to avoid repeated setfillstate

Add TextFillStateNeeded and add settextfillstate that conditionally
performs setfillstate only once for the operations.

gs/Resource/Init/pdf_ops.ps


2014-11-13 14:30:37 -0700
Henry Stiles <henry.stiles@artifex.com>
b669cfb4d3805adbcc2d7d7a3fa9fad3e9645aa1

Warning cleanup and remove an obsolete PCL XL colorspace type.

gs/base/gdevpxen.h
pcl/pcfsel.c
pcl/pglabel.c
pl/plftable.h
pxl/pxgstate.c
pxl/pxink.c
pxl/pxptable.c


2014-11-12 23:03:50 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
a814674105d9b57d5751e21d4a803df9fa4a4856

Added xpswrite option to clusterpush.pl.

gs/toolbin/localcluster/clusterpush.pl


2014-11-12 16:50:50 -0700
Henry Stiles <henry.stiles@artifex.com>
40bc5a9477192f663d66ffcad75cd14d7dac43ab

Fix 695673: symbol set not used correctly.

If we don't support a requested symbol set we map the font directly
with the character codes, i.e. the symbol mapping is identity. Due to
an historical artifact we used to map symbol and wingding fonts
without symbol sets by just adding 0xf000 to the input character code,
thus evolved the conditional to check if the font is internal and the
symbol set is 0 just add 0xf000 because it must be a wingdings or
symbol font. Of course that is wrong even if very rarely encountered,
and unnecessary because we've added the symbols sets needed to support
wingdings and symbol.

pcl/pctext.c
pcl/pglabel.c
pl/plsymbol.c
pl/plsymbol.h
pxl/pxfont.c


2014-11-10 14:31:44 +0000
Ken Sharp <ken.sharp@artifex.com>
c98c38c8b9912fc3510ef2e1e53c3ff1837b0519

eps2write - don't clamp text BBox to the text enumerator origin

Bug #695671 "eps2write gives incorrect bounding box with rotated text"

The bug here is that, having gone to some effort to retrieve the bounding
box of the text, the code then clamps the origin of the text box to the
origin of the text enumerator.

This is clearly incorrect for rotated text, and I'm doubtful it makes sense
even for upright text. I'm somewhat puzzled because it looks quite deliberate
but I don't see why, and my testing shows no differences if I don't do this.

So I'm removing this for now, this may need some more attention in the future
but then that is still generally true of the eps2write device.

No differences expected, the eps2write device is not cluster tested.

gs/devices/vector/gdevpdte.c


2014-11-06 09:53:05 +0000
Ken Sharp <ken.sharp@artifex.com>
b7fa37ecf0f25b125fafeed15873963853148276

Documentation change - improve and correct MaxShadinBitmapSize documentation

gs/doc/Ps2pdf.htm


2014-11-05 15:57:10 +0000
Ken Sharp <ken.sharp@artifex.com>
7bdf34b3dfd52e3897cef02e7c540270c10e2349

PDF Interpreter - run annotations in a stopped context for error-and-continue

Bug #695453 "Conversion to png fails with undefinedresult in --run--"

The PDF test file was supplied privately, it contains 3 annotations, each of
which is invalid having /Rect, /QuadPoints or /BBox arrays where each
element is 0.

Here we simply run the annotation inside a stopped context so that if it
throws an error we can raise a message and carry on.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-11-05 10:33:15 +0000
Ken Sharp <ken.sharp@artifex.com>
25b7ec08e8fed8a69c9b3ac75fbf3ccc43693e7c

PDF interpreter - attempt to recover from empty stream with broken endstream

Bug #695664 "Problem reading PDF file: stream length incorrect"

The file has an annotation with a broken stream, its empty (Length 0) and
the endstream keyword is incorrectly written as endsteam.

When we encounter the endobj we attempt to unwind back to the object number
and generation on the stack, but we don't have those on the stack, so instead
we consume the error recovery information, which then leads to the stream
code being unable to recover from the error condition, resulting in an error.

This change to endobj looks to see if either of the 2nd and third entries
on the operand stack are a 'mark', and if so assumes that this is a broken
empty stream, pops back to the mark and exits leaving cleanup to the
stream code.

Clearly this code can be defeated, depending on what garbage is left behind
by the broken stream, but in general we might reasonably expect to find two
integers before a mark object. Even if we don't, the result will still be no
worse than at present.

No differences expected

gs/Resource/Init/pdf_base.ps


2014-11-03 15:36:55 +0000
Ken Sharp <ken.sharp@artifex.com>
b2a6decb294ca8c48c71da2211f3284b2334d921

PDF interpreter - make unrecognised operators obey PDFSTOPONERROR

Bug #695661 "Ghostscript command hangs indefinitely"

The PDF file is badly corrupted, Acrobat fails to display most of page 27,
MuPDF complains of zlib errors.

Ghostscript also emits many warnings and then proceeds to spend an interminably
long time subdividing a curve. At resolutions up to ~25 dpi its reasonably
quick, after that its a long time indeed.

We can't simply catch the zlib errors like MuPDF, as bug #688716 indicates
that, under at least some conditions, Acrobat ignores these errors.

The problem seems to be caused by the fact that the corrupted data includes
some truly massive co-ordinates, but we can't simply ignore those either
as a real number can vary up to +/- 3.403 x 10^38. Possibly we could limit
numbers representing co-ordinates to 14,400, since that's the maximum
Acrobat can use, but that would mean a *lot* of reworking in the PDF
interpreter.

The best I can come up with short of that is to make malformed numbers
throw an error, and honour PDFSTOPONERROR, which to be frank should have
been the case already.

No differences expected.

gs/Resource/Init/pdf_base.ps


2014-10-16 12:26:24 +0100
Chris Liddell <chris.liddell@artifex.com>
a3bb342587cc7247420a05ff2428c4c94da194c0

Bug 695593: Add the MAKEDIRS target wherever it was missing.

MAKEDIRS target was missing from a large number of object files and other
files created during the build process. This could cause problems when
running parallel make instances.

No cluster differences.

gs/base/expat.mak
gs/base/fapi_bs.mak
gs/base/freetype.mak
gs/base/ijs.mak
gs/base/jbig2.mak
gs/base/jpeg.mak
gs/base/jpegxr.mak
gs/base/lcms2.mak
gs/base/lcups.mak
gs/base/lcupsi.mak
gs/base/ldf_jb2.mak
gs/base/lib.mak
gs/base/lwf_jp2.mak
gs/base/openjpeg.mak
gs/base/png.mak
gs/base/tiff.mak
gs/base/trio.mak
gs/base/unix-aux.mak
gs/base/zlib.mak
gs/devices/contrib.mak
gs/devices/devs.mak
gs/psi/int.mak


2014-10-31 12:39:45 +0000
Chris Liddell <chris.liddell@artifex.com>
0f0b9350206c99e5f4b73fe639ed3e085066fe5e

Fix and improve bit-rotted jbig2dec/libpng build on Windows

The Windows jbig2dec build incorporating libpng had bit-rotted, credit to
Ray for identifying the problems there.

In addition, I've added provision for specifying the libpng and zlib source
paths on the nmake command line, and automatic inclusion of libpng if
the path appears valid.

No cluster differences.

gs/jbig2dec/jbig2_image_png.c
gs/jbig2dec/msvc.mak


2014-10-30 10:59:01 +0000
Chris Liddell <chris.liddell@artifex.com>
69a6dc944e63a4a037eccc0d0cba5dee6bf9f272

Fix annoying, hard to reproduce ICC related warning

Occasionally, and in hard to reproduce circumstances, we could get a warning
from the ICC code:
./base/gsicc_manage.c:1084: gsicc_open_search(): \
Could not find <garbage string>

This, it turns out, is because the get_params code was returning a pointer to
a string allocated in non-gc memory, which just isn't compatible with the
way the Postscript interpreter interacts with the graphics library.

This commit changes the way the parameter is returned so it copies the string
into gc memory, compatible with use in a Postscript string object. Note that the
put_params equivalent code was already correct in copying the string from gc
memory into non-gc memory managed by the device code.

No cluster differences

gs/base/gsdparam.c


2014-10-27 21:19:44 +0100
Simon Bünzli <zeniko@gmail.com>
ee0bc20cc98c8e8381003a25dfa0b21e681c6545

replace jbig2_arith_get_offset with jbig2_arith_has_reached_marker

The DOS check introduced with 6e1f2259115efac14cd6c7ad9d119b43013a32a1
tries to determine whether arithmetic coding has run out of data and
has entered an infinite loop. It does so by checking how many bytes
have been read and compares with the number of bytes available. The fix
however fails to take into account bytes which have been cached in
_Jbig2ArithState::next_word which causes valid images to be rejected.

This patch corrects that bug by replacing that check with a generic
check as to whether the end of the data stream has been reached (which
is the case if the only two remaining cached bytes are 0xFF and a value
larger than 0x8F).

Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

gs/jbig2dec/jbig2_arith.c
gs/jbig2dec/jbig2_arith.h
gs/jbig2dec/jbig2_symbol_dict.c


2014-09-27 13:51:32 +0200
Simon Bünzli <zeniko@gmail.com>
9157d6a5fccf109eb6554557eb8904b281571d28

Bug 694892: fix typo in 5eaf740b2c02523ae2ae6454e546cb6700d4e3f3

Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

gs/jbig2dec/jbig2_metadata.c


2014-10-29 09:29:09 +0000
Chris Liddell <chris.liddell@artifex.com>
f6789d068a5f7af9cfead5120930893955123be1

Correct a small out-of-dateness related to COMPILE_INITS

No cluster differences

gs/doc/Make.htm


2014-10-28 17:09:17 +0000
Ken Sharp <ken.sharp@artifex.com>
cd2c4af1dd92bc4cc32170254c84498792913c0e

PDF interpreter - ignore /Contents array entries which don't resolve to dicts

Bug #695645 "PDFWrite fails on file with Error: /typecheck in --run--"

The specimen file has a /Contents array where one of the elements is an
indirect reference to another array. This isn't legal, entries in the
/Contents array must be references to streams. Acrobat simply ignores the
error and displays the page blank.

Here we check each entry before we process it, and if its not a dictionary
we ignore it, exit the loop processing the entries (as Acrobat apparently does)
and emit a warning.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-10-28 16:28:30 +0000
Ken Sharp <ken.sharp@artifex.com>
e21bb3e597825215da7ad4d757585fa96eb39909

PDF interpreter - provide a default BBox for Forms

Bug #695632 "Error: /undefined in --.PDFexecform--"

Type 1 Form XObjects are required to have a /BBox, but this example file
incorrectly omits it. Here we add a default (incorrect) BBox just to work
around the error. We also emit a warning that the file is damaged.

No diffreences expected.

gs/Resource/Init/pdf_draw.ps


2014-10-28 15:55:48 +0000
Chris Liddell <chris.liddell@artifex.com>
282c8f902d98543aee12931e69087180829bc8d1

Remove paragraphs relating to GNU readline

No cluster differences.

gs/doc/Make.htm


2014-10-28 10:49:37 +0000
Chris Liddell <chris.liddell@artifex.com>
05c2e0876019551d65f8f79655f34aa5adb5ca27

Update the docs for fonts and COMPILE_INITS

No cluster differences.

gs/doc/Fonts.htm
gs/doc/Make.htm
gs/doc/Use.htm


2014-10-27 19:12:15 -0700
Michael Vrhel <michael.vrhel@artifex.com>
d39b321e4927dfafa428af8c25bddb791b14e15b

Update color management documentation.

gs/doc/GS9_Color_Management.pdf
gs/doc/GS9_Color_Management.tex


2014-10-23 09:35:26 +0100
Chris Liddell <chris.liddell@artifex.com>
db7ac4892625633204fad65ffa0da6dbaf43fc6a

Bug 695598: cidfmap validation problems on Windows

Originally, the cidfmap validation used "stat" to check whether the font file
was available (and remove the mapping if the font file is missing). But it
seems, for some (currently unidentified) reason, stat can fail even if the
font file is actually avaiable.

This changes the validation code to use ".libfile" and "file" operators to
check whether the font file can be found - this, it seems, works, even in cases
where "state" fails.

No cluster differences.

gs/Resource/Init/gs_cidfm.ps


2014-10-22 13:30:08 +0100
Ken Sharp <ken.sharp@artifex.com>
352645ff149aa690074030995ef33e1c2e4c35a0

Xpswrite - properly initialise PrinterName

Bug #695617 "Error: Printer name too long"

The xpswrite device doesn't include a full definition of its devicestructure
or initialisers for its variables.

This can lead to problems if any of these variables are exposed via
put/get params as the initial parameter will be uninitialised (put and get
params are called before the device open method)

Here we add a 'finish_copydevice' method and initialise the PrinterName
in it. Devices are created by calling copydevice on the device prototype
and the finish_copydevice method is called as the last action from there
so its safe to initialise the variables, and this will be completed before
put/get params is called.

No differences expected

gs/devices/vector/gdevxps.c


2014-10-22 14:04:14 +0200
Tor Andersson <tor.andersson@artifex.com>
648aba52e1430277035471709e3d6596c7016a35

Fix 695618: Keep a tail pointer to speed up parsing long XML documents.

xps/xpsxml.c


2014-10-20 09:55:22 -0600
Henry Stiles <henry.stiles@artifex.com>
c477d95f3e6cf50da2dc125c8d8335a440d9970d

Restrict xpswrite PrinterName device paramater to windows platform.

gs/devices/vector/gdevxps.c


2014-10-19 17:54:28 -0600
Henry Stiles <henry.stiles@artifex.com>
54f69da6cdeae9dcffcb1d060ccbeef3e0d4f7b0

Bug #695578 - Continue parsing a numeric parameter if a bad character
is found before a legal value.

This refines an earlier fix, bug #694725 which implemented skipping
the rest of the numerical parameter when a bad character was parsed.

Thanks to Norbert Janssen for finding and fixing this problem.

pcl/pcparse.c


2014-10-19 10:31:42 -0600
Henry Stiles <henry.stiles@artifex.com>
75a6c77aaa4278d462834f08b8da23dabc4566d7

Change warnings to debug statements.

gs/devices/vector/gdevxps.c


2014-10-19 10:07:57 -0600
Henry Stiles <henry.stiles@artifex.com>
8eadbf5b901588e86886f7ab42462c2486e9f561

Fix warnings introduced with "saved page" work.

pl/plmain.c


2014-10-19 09:52:33 -0600
Henry Stiles <henry.stiles@artifex.com>
d9a5f2f04b57d09f7f8c2082b29edd43fc96dcb0

Remove repetive accessors for 2 user options (interpolate and nocache)
and replace with single routine in pl.

pcl/pctop.c
pl/plmain.c
pl/plmain.h
pxl/pxl.mak
pxl/pxtop.c


2014-10-11 09:46:19 -0600
Henry Stiles <henry.stiles@artifex.com>
d93848b56be856aaa41a7e16fa42c141219244f5

Add -dNOCACHE to the usage help statement that runs when the program
is run incorrectly or incompletely.

pl/plmain.c


2014-10-11 09:42:52 -0600
Henry Stiles <henry.stiles@artifex.com>
88ed32c13b7bca6c259dc29502a40446bf34f75b

Implement NOCACHE parameter. We only support the simple case of
specifying the parameter or not. Right hand side values of /true and
/false are not supported.

pcl/pcfont.c
pcl/pcstate.h
pcl/pctop.c
pl/plmain.c
pl/plmain.h
pl/pltop.h
pxl/pxstate.c
pxl/pxstate.h
pxl/pxtop.c
xps/xpstop.c


2014-10-10 11:56:28 -0600
Henry Stiles <henry.stiles@artifex.com>
f072fac051e5f008488e5eea66cc76876516ec47

Error handling was wrong, objects were dereferenced before checking if
the allocation failed.

xps/xpstop.c


2014-10-18 07:55:27 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
6715211e308d753a79b35663f951a239704b8092

Fix compile issue with Luratech introduced in 74d5e9fb7d70d3d3d9cf964c76c550134c822020.

The change from a char * to an enum for psdf_image_params_s->AutoFilterStrategy
required a change in gdevpsdi.c.

gs/devices/vector/gdevpsdi.c


2014-10-14 12:39:27 +0100
Ken Sharp <ken.sharp@artifex.com>
5bf2c272781f20dc2ed4ca8a461166543846f422

ps2write - undo PDF name escaping for Separation colours

Bug #695590 "Spaces in spot colour names are encoded to "#20""

The opdfread header wasn't applying the conversion from PDF escaped names
when the name was an entry in a Separation colour space.

No differences expected.

gs/devices/vector/opdfread.h
gs/lib/opdfread.ps


2014-10-10 11:26:45 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
63b484c3040aa644fff2ed2a0861ac8cb082aafb

Bug 695146: patch for missing lrintf

OpenJPEG uses lrintf() which can be missing, or in this case, the prototype is
missing from the math.h header file - causing faulty output.

This patch checks for the function prototype, if it's missing it replaces the
lrintf() call with a naive round/cast implementation.

Two reasons for choosing this approach: it saves maintaining a patch against
OpenJPEG, and secondly, this is only relevant to older systems - more up to
date systems have lrintf() correctly prototyped, and often have implementations
optimised to the hardware, so we really want to use it if it's available.

No cluster differences.

gs/configure.ac


2014-10-07 14:33:08 -0600
Henry Stiles <henry.stiles@artifex.com>
8095a1010b799d5e36ac5bf4a5b67356362df607

Upon macro creation there is no need to search the dictionary for a
like named macros and delete it, the dictionary entry is recycled later
when we add the macro.

pcl/pcmacros.c


2014-10-07 09:28:38 +0100
Ken Sharp <ken.sharp@artifex.com>
ca7cea181d7905cb460ad6f82f234d3ee8d5efce

pdfwrite - fix a logical error in the AutoFilterStrategy params

This code was originally present only when using the Luratech decoder
but would have been incorrect there too.

Spotted while looking at a scan-build warning

gs/devices/vector/gdevpsdp.c


2014-10-05 20:55:39 +0100
Chris Liddell <chris.liddell@artifex.com>
1f3e40cf0fbbbb9a1c8085584f3e411cb112d9b4

Bug 695555: fix check to simulate overprint.

Mirror condition from pdf14_mark_fill_rectangle() in
pdf14_copy_alpha_color() to decide whether we should apply overprinting.

No cluster differences.

gs/base/gdevp14.c


2014-10-06 18:00:46 +0100
Ken Sharp <ken.sharp@artifex.com>
4018f1158984093380971ba1f4096b599c2d639e

PDF interpreter - improve error recovery with PDF form execution

Bug #695537 "Ghostscript locks up reading attached PDF file"

The problem is that, after we execute a form, we attempt to 'grestore' back
to the gsave depth at the time we executed the form, this is to try and
cater for broken form streams that have unbalanced Q/q operators.

This is done by counting the dict stack before the form execution, and after
the form is complete. If the depth is different we execute 'Q' in a loop
until we get back to the same dict stack depth.

This assumes that the only reason for having more dictionaries on the stack
is due to them being pushed by our implementation of 'q'. However in this
case (and more generally, in any event) we have created some dictionaries
then encountered an error, and returned control back to the form execution
routine.

As stated this calls 'Q' in a loop expecting that each 'Q' will decrement
the number of dictionaries by 1 each time. But 'Q' only does that if the
dictionary is the result of a 'q' if it isn't it leaves it in place.

So the form execution simply carries on round the loop forever.

This commit addresses this by checking the number of items on the dict
stack before and after executing 'Q' and if they are the same, it executes
the 'end' operator instead to remove the topmost dictionary from the stack.

This allows us to carry on removing gstate or general dictionaries until
we get back to the correct depth.

Note that, because there is a genuine error in the file, we do not render
it 'correctly', but neither does any other PDF consumer. Other consumers
render more of it than we do, but they all drop the 'Fannie Mae' logo.

No differences expected

gs/Resource/Init/pdf_draw.ps


2014-10-06 17:06:27 +0100
Ken Sharp <ken.sharp@artifex.com>
33e70f43badc2581757549bba55747af3f966622

colour handling - remove continuations from the exec stack on error

If we get an error (not running another PostScript function), we were not
removing our continuation procedure and data from the execution stack
before exiting setcolorspace.

This led to the interpreter exiting instead of simply flagging an error.

No bug report for this, discovered while working on bug #695537

gs/psi/zcolor.c


2014-10-06 16:37:37 +0100
Ken Sharp <ken.sharp@artifex.com>
74d5e9fb7d70d3d3d9cf964c76c550134c822020

pdfwrite - Correct Gray and ColorImageAutoFilterStrategy

A number of problems here; firstly the commit that added these to the
distiller params has the correct names in the commit message, but the names
used in the code were incorrect (eg ColorAutoFilterStrategy).

Secondly the parameter is supposed to be a name, but the data stored
was a C string, and get_params was returning an integer, so it actually
contained half the memory pointer value.

The parameters weren't added to .distillerparamkeys so currentdistillerparams
didn't return the values.

The default value for the non-Luratech case should have been /JPEG but in
fact /JPEG2000 was used in both cases.

99-01-fixed.ps should dhow up as a diff this time, and then should cease
being indeterminate with the pdfwrite device, as we now return the correct
name rather than half a random memory location.

gs/Resource/Init/gs_pdfwr.ps
gs/devices/vector/gdevpsdf.h
gs/devices/vector/gdevpsdp.c


2014-10-05 19:37:24 +0100
Paul Gardiner <paul.gardiner@artifex.com>
e72d03c68bfb6afaa0b90f6b717f91aef67b6c07

Fix compiler warnings introduced by temp-file commit

gs/base/gxclfile.c
gs/base/unistd_.h


2014-10-05 17:14:09 +0100
Ken Sharp <ken.sharp@artifex.com>
5d4d9d9772765501cac81b9b181ecc83f900d08a

pdfwrite - move outline relocation after the outline action relocation

Bug #695354 "Segmentation fault splitting PDF"

Move the pointer relocation for outline levels so that it takes place after
we relocate the outline actions, otherwise we can end up corrupting
memory.

No differences expected

gs/devices/vector/gdevpdf.c


2014-07-24 12:50:17 +0100
Paul Gardiner <paul.gardiner@artifex.com>
9108db24fef88855199038a257bf935a698af2f4

Avoid failure to clean up temp files when the execution is killed

This currently works only for Windows and Linux builds. For Windows, temp
files are created with the "delete on close" option. For Linux, temp
files are immediately unlinked on creation. In both cases, the initially
opened FILE pointer is kept open throughout execution, and reader access
is provided by duplicating the initial FILE rather than opening a new
FILE pointer based on the file name.

gs/base/gp.h
gs/base/gp_macio.c
gs/base/gp_mswin.c
gs/base/gp_os2fs.c
gs/base/gp_unifs.c
gs/base/gp_vms.c
gs/base/gxclfile.c


2014-10-03 13:40:21 +0100
Chris Liddell <chris.liddell@artifex.com>
0a8ac7c25438fbd4c406fc735c9c0fbd9f05c527

Bug 695244: ensure a consistent allocator for DCT streams.

The existing code could result in a mis-match between the memory allocators
used for the DCT specific parts of the stream and the main body of the stream.

As both are in gc memory, this could result, when the stream goes out of scope,
in the DCT specific memory being garbage collected before the main stream
object. As the main stream object contains the "finalize" method, the call to
finalize would result in accessing already freed memory.

This commit revises the code to use the same method to work out the allocator
to use for the main stream object as we do for the DCT specific parts.

No cluster differences.

gs/psi/zfdctd.c


2014-10-02 21:54:56 +0100
Chris Liddell <chris.liddell@artifex.com>
8f16e6dc73550d3e8f339a609e2dc51998616330

Bug 695561: remove .DS_Store files

No cluster differences.

gs/lcms2/Projects/mac/.DS_Store
gs/lcms2/Projects/mac/LittleCMS/.DS_Store


2014-09-30 17:35:02 +0100
Chris Liddell <chris.liddell@artifex.com>
f85afab4a4584c79f309e8f5691f5955605c67b5

Address two compiler warnings.

No cluster differences.

gs/base/gdevprn.c


2014-09-30 08:58:55 +0100
Chris Liddell <chris.liddell@artifex.com>
b460743bdc6c8c4de5fca260224673ca839b11e6

Remove LCMS.

No cluster differences.

gs/Makefile.in
gs/base/lcms.mak
gs/configure.ac
gs/lcms/AUTHORS
gs/lcms/COPYING
gs/lcms/ChangeLog
gs/lcms/Delphi/Samples/MAKETEST.BAT
gs/lcms/Delphi/Samples/TEST.PAS
gs/lcms/Delphi/Samples/create.pas
gs/lcms/Delphi/Samples/gamutchk.pas
gs/lcms/Delphi/Samples/getxyz.pas
gs/lcms/Delphi/Samples/sRGB Color Space Profile.icm
gs/lcms/Delphi/Samples/testfrm.pas
gs/lcms/Delphi/Samples/testwp.pas
gs/lcms/Delphi/delphidemo.cfg
gs/lcms/Delphi/delphidemo.dof
gs/lcms/Delphi/delphidemo.dpr
gs/lcms/Delphi/delphidemo.res
gs/lcms/Delphi/demo1.dcu
gs/lcms/Delphi/demo1.ddp
gs/lcms/Delphi/demo1.dfm
gs/lcms/Delphi/demo1.pas
gs/lcms/Delphi/lcmsdll.pas
gs/lcms/INSTALL
gs/lcms/Lib/BC/BC.txt
gs/lcms/Lib/MS/MS.TXT
gs/lcms/Makefile.am
gs/lcms/Makefile.in
gs/lcms/NEWS
gs/lcms/Projects/BorlandC_5.5/lcms.rc
gs/lcms/Projects/BorlandC_5.5/lcmsdll.lk
gs/lcms/Projects/BorlandC_5.5/lcmsdll.lst
gs/lcms/Projects/BorlandC_5.5/mklcmsdll.bat
gs/lcms/Projects/VC2005/Python.vcproj
gs/lcms/Projects/VC2005/Testbed.vcproj
gs/lcms/Projects/VC2005/icc2ps.vcproj
gs/lcms/Projects/VC2005/icclink.vcproj
gs/lcms/Projects/VC2005/icctrans.vcproj
gs/lcms/Projects/VC2005/jpegicc.vcproj
gs/lcms/Projects/VC2005/lcms.rc
gs/lcms/Projects/VC2005/lcms.sln
gs/lcms/Projects/VC2005/lcms.vcproj
gs/lcms/Projects/VC2005/lcmsdll.vcproj
gs/lcms/Projects/VC2005/resource.h
gs/lcms/Projects/VC2005/tiffdiff.vcproj
gs/lcms/Projects/VC2005/tifficc.vcproj
gs/lcms/Projects/VC2008/Python.vcproj
gs/lcms/Projects/VC2008/Testbed.vcproj
gs/lcms/Projects/VC2008/icc2ps.vcproj
gs/lcms/Projects/VC2008/icclink.vcproj
gs/lcms/Projects/VC2008/icctrans.vcproj
gs/lcms/Projects/VC2008/jpegicc.vcproj
gs/lcms/Projects/VC2008/lcms.rc
gs/lcms/Projects/VC2008/lcms.sln
gs/lcms/Projects/VC2008/lcms.vcproj
gs/lcms/Projects/VC2008/lcmsdll.vcproj
gs/lcms/Projects/VC2008/resource.h
gs/lcms/Projects/VC2008/tiffdiff.vcproj
gs/lcms/Projects/VC2008/tifficc.vcproj
gs/lcms/Projects/VC6/Python.dsp
gs/lcms/Projects/VC6/Python.plg
gs/lcms/Projects/VC6/Testbed.dsp
gs/lcms/Projects/VC6/Testbed.plg
gs/lcms/Projects/VC6/icc2ps.dsp
gs/lcms/Projects/VC6/icclink.dsp
gs/lcms/Projects/VC6/icctrans.dsp
gs/lcms/Projects/VC6/jpegicc.dsp
gs/lcms/Projects/VC6/lcms.dsp
gs/lcms/Projects/VC6/lcms.dsw
gs/lcms/Projects/VC6/lcms.opt
gs/lcms/Projects/VC6/lcms.rc
gs/lcms/Projects/VC6/lcmsdll.dsp
gs/lcms/Projects/VC6/resource.h
gs/lcms/Projects/VC6/tifficc.dsp
gs/lcms/Projects/VC7/Python.vcproj
gs/lcms/Projects/VC7/Testbed.vcproj
gs/lcms/Projects/VC7/icc2ps.vcproj
gs/lcms/Projects/VC7/icclink.vcproj
gs/lcms/Projects/VC7/icctrans.vcproj
gs/lcms/Projects/VC7/jpegicc.vcproj
gs/lcms/Projects/VC7/lcms.rc
gs/lcms/Projects/VC7/lcms.sln
gs/lcms/Projects/VC7/lcms.vcproj
gs/lcms/Projects/VC7/lcmsdll.vcproj
gs/lcms/Projects/VC7/resource.h
gs/lcms/Projects/VC7/tiffdiff.vcproj
gs/lcms/Projects/VC7/tifficc.vcproj
gs/lcms/README.1ST
gs/lcms/aclocal.m4
gs/lcms/bin/Bin.txt
gs/lcms/compile
gs/lcms/config.guess
gs/lcms/config.sub
gs/lcms/configure
gs/lcms/configure.ac
gs/lcms/depcomp
gs/lcms/doc/LCMSAPI.TXT
gs/lcms/doc/TUTORIAL.TXT
gs/lcms/filter.c
gs/lcms/include/Makefile.am
gs/lcms/include/Makefile.in
gs/lcms/include/icc34.h.in
gs/lcms/include/lcms.h
gs/lcms/install-sh
gs/lcms/install.gcc
gs/lcms/jpegicc/Makefile.am
gs/lcms/jpegicc/Makefile.in
gs/lcms/jpegicc/iccjpeg.c
gs/lcms/jpegicc/iccjpeg.h
gs/lcms/jpegicc/jpegicc.1
gs/lcms/jpegicc/jpegicc.c
gs/lcms/jpegicc/makefile.simple
gs/lcms/lcms.pc.in
gs/lcms/ltmain.sh
gs/lcms/makefile.simple
gs/lcms/matlab/icctrans.c
gs/lcms/matlab/icctrans.matlab.pdf
gs/lcms/missing
gs/lcms/mkinstalldirs
gs/lcms/python/Makefile.am
gs/lcms/python/Makefile.in
gs/lcms/python/lcms.i
gs/lcms/python/lcms.py
gs/lcms/python/lcms_wrap.cxx
gs/lcms/python/swig_lcms
gs/lcms/python/testbed/AdobeRGB1998.icc
gs/lcms/python/testbed/cam02.py
gs/lcms/python/testbed/cam97.py
gs/lcms/python/testbed/clamp.py
gs/lcms/python/testbed/constant.py
gs/lcms/python/testbed/createmsh.py
gs/lcms/python/testbed/gamma.py
gs/lcms/python/testbed/info.py
gs/lcms/python/testbed/lab2adobe.py
gs/lcms/python/testbed/sRGB Color Space Profile.icm
gs/lcms/python/testbed/sRGB2adobe.py
gs/lcms/python/testbed/srgb2lab.py
gs/lcms/python/testbed/srgb2xyz.py
gs/lcms/python/testbed/virtprf.py
gs/lcms/python/testbed/whtpnt.py
gs/lcms/samples/Makefile.am
gs/lcms/samples/Makefile.in
gs/lcms/samples/icc2ps.1
gs/lcms/samples/icc2ps.c
gs/lcms/samples/icclink.1
gs/lcms/samples/icclink.c
gs/lcms/samples/icctrans.1
gs/lcms/samples/icctrans.c
gs/lcms/samples/itufax.c
gs/lcms/samples/makefile.simple
gs/lcms/samples/mkcmy.c
gs/lcms/samples/mkgrayer.c
gs/lcms/samples/mktiff8.c
gs/lcms/samples/vprf.c
gs/lcms/samples/wtpt.1
gs/lcms/samples/wtpt.c
gs/lcms/samples/xgetopt.c
gs/lcms/src/Makefile.am
gs/lcms/src/Makefile.in
gs/lcms/src/cmscam02.c
gs/lcms/src/cmscam97.c
gs/lcms/src/cmscgats.c
gs/lcms/src/cmscnvrt.c
gs/lcms/src/cmserr.c
gs/lcms/src/cmsgamma.c
gs/lcms/src/cmsgmt.c
gs/lcms/src/cmsintrp.c
gs/lcms/src/cmsio0.c
gs/lcms/src/cmsio1.c
gs/lcms/src/cmslut.c
gs/lcms/src/cmsmatsh.c
gs/lcms/src/cmsmtrx.c
gs/lcms/src/cmsnamed.c
gs/lcms/src/cmspack.c
gs/lcms/src/cmspcs.c
gs/lcms/src/cmsps2.c
gs/lcms/src/cmssamp.c
gs/lcms/src/cmsvirt.c
gs/lcms/src/cmswtpnt.c
gs/lcms/src/cmsxform.c
gs/lcms/src/cmsxform.c.orig
gs/lcms/src/cmsxform.h
gs/lcms/src/lcms.def
gs/lcms/src/makefile.simple
gs/lcms/testbed/Makefile.am
gs/lcms/testbed/Makefile.in
gs/lcms/testbed/makefile.simple
gs/lcms/testbed/sRGB Color Space Profile.icm
gs/lcms/testbed/sRGBSpac.icm
gs/lcms/testbed/testcms.c
gs/lcms/tifficc/Makefile.am
gs/lcms/tifficc/Makefile.in
gs/lcms/tifficc/getopt.c
gs/lcms/tifficc/makefile.simple
gs/lcms/tifficc/tiffdiff.c
gs/lcms/tifficc/tifficc.1
gs/lcms/tifficc/tifficc.c
gs/psi/msvc.mak


2014-09-25 11:21:14 +0100
Chris Liddell <chris.liddell@artifex.com>
6ecc8536f5119f21aa38b94eb00e61214d27bd62

Bug 695502: segfault with -dBGPrint=true

When we're doing background printing, and we're using a memory file based
clist, we create a "clone" of the file object with it's own "context" but
which shares the underlying "raw" data with the original file. The original
code tries to free the underlying raw data memory along with the clone
file object, but as the clone uses the memory allocator created for the
rendering thread and the raw data memory was allocated in the interpretation
"thread", we end up trying to free memory to the wrong allocator.

This commit has the interpreter thread hold a reference to the original clist
files, so we can free the "clone" files with the thread allocator, and the
original file with the allocator from the interpreter thread. As both these
cleanup actions happen in the interpreter thread, we don't have to worry about
thread clashes.

No cluster differences.

gs/base/gdevprn.c
gs/base/gdevprn.h
gs/base/gxclthrd.c


2014-09-17 21:17:14 +0100
Chris Liddell <chris.liddell@artifex.com>
7ac0f1668fca8e1ca343e02f55faa7dd9f23d549

Bug 695483: BGPrint seg fault

When reading params for the existing device, to pass to the cloned device,
use the thread_memory rather than the original device memory.

And move the io_device_table into immovable memory, rather than regular gc
memory.

No cluster differences.

gs/base/gsiodev.c
gs/base/gxclthrd.c


2014-09-29 08:57:14 +0100
Chris Liddell <chris.liddell@artifex.com>
68aa4cb52359c0c6e25bcf53735bb05030ee4a2b

Fix typo in LICENSE file

CLUSTER_UNTESTED

gs/LICENSE


2014-09-27 15:21:01 +0100
Ken Sharp <ken.sharp@artifex.com>
d5ecb99d3641a95803c88e6df2f734d392a3be63

Make DCT filter finalize routine robust against double calling.

Bug #695542 "Crash on EPS on Mac and Linux"

The problem is that we close a DCT filter inside a gsave context, while
the file ref is still pointing at it.

When the PostScript 'close' operator closes the DCT filter, we free the
memory associated with the stream state in the finalize routine. But the
PostScript file ref is still pointing at it, and when we grestore, the
finalize routine gets called again. Because the routine doesn't check for
NULL pointers before freeing, and indeed doesn't NULL the pointers after it
does free them, this leads to us freeing memory which has already been
freed.

Apparently we've already fixed a number of similar problems in finalize
routines, probably caused by people not realising a finalize routine could
(surprisingly) be called more than once.

In this commit we set the pointers to null after feeing the memory, and
check for null pointers before attempting to free the memory, and before
attempting to dereference any pointers.

No differences expected.

gs/base/sdctc.c
gs/base/stream.c


2014-09-27 09:05:54 +0100
Chris Liddell <chris.liddell@artifex.com>
9ef2c8188a86c5e19c93a38bb01b9297200bd896

Bug 695543 - gs %stdin segfaults

In zopen_file() when we're opening a Postscript device, ensure that we set the
"state" entry in the iodev structure before calling the device specific "open"
method - as we do elsewhere in the same circumstances. That is required to
properly access devices like "%stdin" and co.

No cluster differences.

gs/psi/zfile.c


2014-09-26 09:56:40 +0100
Chris Liddell <chris.liddell@artifex.com>
97ee68c17fd8709b4509b394b721524b7777c3bb

Bug 695539: glyph mapping - handle "missing" codepoints

When extending the glyph mapping in a font, the original code for adding the
codepoint to the font could assume the codepoint was valid as it was always
read from the Adobe Glyph List. But I added code to "parse" a codepoint from
the special "uniXXXX" type names, and that breaks that assumption.

Handle the case where we reach that point with codepoint that doesn't exist in
the AGL.

No cluster differences.

gs/Resource/Init/gs_ttf.ps
gs/Resource/Init/gs_type1.ps


2014-09-25 23:42:50 -0600
Henry Stiles <henry.stiles@artifex.com>
0c677ef110bb53460062da7586e37a37ea6eae52

Fix Bug #695535 Page not cleared upon resolution setting.

Somewhat puzzling this hasn't come up before but PCL was changing the
resolution of a PCL job upon receiving a PJL command without erasing
the page. If the resolution is set on the command line or the device
default is used the normal page erasing happens with the job's
resolution already set.

pcl/pcjob.c
pcl/pcl.mak


2014-09-25 09:47:14 -0700
Ray Johnston <ray.johnston@artifex.com>
53d8252202f860398be69a59d6a6da80aca551ce

Fix typo when closing bfile and cfile. Thanks to Norbert Janssen.

gs/base/gxclthrd.c


2014-09-23 07:47:00 -0700
Ray Johnston <ray.johnston@artifex.com>
75a183ff51daebf8c3835f3d6e5107d70061a8ce

Change the -Z: output to report parse done as well as page render done.

This corresponds more closely the the information available with -Z: from
gs which provides Outputpage start and Outputpage end times. This is useful
for the 'overview' timing analysis, such as with bug 695374.

pcl/pctop.c
pl/plmain.c


2014-09-23 09:18:46 +0100
Ken Sharp <ken.sharp@artifex.com>
98b066aad13281ce75471163959db727a5a9da58

pdfwrite - fix a warning and an assignment to conditional

Removing the assignment of a return value to code in order to eliminate a
compiler warning.

The test of code against gs_error_interrupt was accidentally written as an
assignment, fixing this causes progressions in:
Bug690534.pdf
586_-_missing_images_gs_SMask_not_applied.pdf
multiply_luminosity_masks_ignored.pdf

These are progressions over 9.15 as well.

gs/devices/vector/gdevpdft.c


2014-09-08 14:47:15 +0100
Chris Liddell <chris.liddell@artifex.com>
2454c0d599f3abdff7d7b002d54dd58549e948de

Update docs, versions and dates for release candidate.

Update docs, dates etc for second release candidate.

Update stuff for release

gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-09-22 16:08:37 +0100
Ken Sharp <ken.sharp@artifex.com>
fd5858999c4117ef16f8127497bcc329e4006833

accidentally left a line out of ee3d09

Due to finger trouble, missed this line off the last commit

gs/devices/vector/gdevpdft.c


2014-09-22 16:06:01 +0100
Ken Sharp <ken.sharp@artifex.com>
ee3d09d4efed339d15d6168f3ef72516d3391576

pdfwrite - handle transparency mask of type TRANSPARENCY_MASK_None

Bug #695482 "Regression: empty PDF files written starting with ea6290b302598f13e7fb4c29aff73657989e693d"

commit ea6290b302598f13e7fb4c29aff73657989e693d introduced this type of
transparency mask, which is *not* concluded with an end transparency group.
Because pdfwrite didn't expect this, it led to 0 length output PDF files.

This commit restores the functionality, it does not (apparently) produce
correct output from the test file using pdfwrite though.

The differences here are all progressions.

gs/devices/vector/gdevpdft.c


2014-09-22 14:34:55 +0100
Ken Sharp <ken.sharp@artifex.com>
a1a6d76aae77b28bfd805f06df4a1a9537fbc139

remove some C++ comments (and some other commented code)

gs/devices/vector/gdevpdte.c


2014-09-22 13:28:50 +0100
Ken Sharp <ken.sharp@artifex.com>
37837c01c7ca8461e9f458c061e27990dd94ad41

remove an unused variable to silence a compiler warning

gs/devices/gxfcopy.c


2014-09-22 10:42:29 +0100
Ken Sharp <ken.sharp@artifex.com>
202b0d827c4840410d01a6acb83c56277829f507

pdfwrite - close dangling substreams at end of page

Inspired by bug #695482 but not intended as a fix, and also by bug #695354

If we fail to close a substream (possibly because the PDF interpreter throws
an error) then this leaves a text_state associated with the substream
dangling, and potentially referencing other freed memory which can lead
to a crash in the garbage collector. In addition we can end up writing an
empty PDF file.

This commit closes any substreams which are still open when a page is written
which ensures the memory is cleaned up, and that a valid (if broken) PDF
file gets written.

Note that ps2write is (of course) different, and *expects* to have a substream
open at the end of the page, so in this case we have to close the page and then
clean up any dangling substreams afterwards.

Although this appears to 'fix' bug #695482 its not a proper fix.

No differences expected.

gs/devices/vector/gdevpdf.c


2014-09-22 08:51:23 +0100
Ken Sharp <ken.sharp@artifex.com>
9e5c21512649090ae563b584caec32fb6fdc2bb9

pdfwrite - free associated text state when closing a substream

When we open a substream, we create a text state, but we did not prevoously
free the text state when closing the substream, which could lead to memory
leaks or if using the '%d' syntax for per-page PDF output, could lead to
crashes in the garbage collector.

No differences expected

gs/devices/vector/gdevpdti.c


2014-09-22 08:49:39 +0100
Ken Sharp <ken.sharp@artifex.com>
1cd582c342d1d754d85f5d89f39cbe672b9d9c67

pdfwrite - free FDArray from copied CIDFOnts when copy is freed

further to commit 26a22e which freed copied descendant fonts from a copy of
a CIDFont when it was freed, here we free the FDArray itself from teh copy.

No differences expected

gs/devices/gxfcopy.c


2014-09-19 13:38:25 +0100
Ken Sharp <ken.sharp@artifex.com>
26a22e6fd3dd42fdcaae568276f82b40d746bce9

Free copied descendant font(s) when freeing a copied CIDFont

When we copy a CIDFont (other than a TrueType CIDFont) we also copy the
descendant fonts. But when we free them (gs_free_copied_font) we only free
the CIDFont, leaving the descendants dangling. This can cause problems
(seg fault) when we garbage collect the descendants.

Here we free the descendants as well. This is complicated by the fact that
the parent CIDFont 'glyphs' space is shared by all the descendants, so
we *don't* want to free that when we free the descendant.

No differences expected

gs/devices/gxfcopy.c


2014-09-17 14:02:17 +0100
Chris Liddell <chris.liddell@artifex.com>
bb35d2d7bc93b1fff5e182be370d64b24129a09e

Bug 695490: GL stick font seg fault

Initialise width cache values for stick font and 531 font.

No cluster differences.

pcl/pglabel.c


2014-09-17 13:46:17 +0100
Chris Liddell <chris.liddell@artifex.com>
d4c1bd25347e42d0668a73a57bd9aa8ca904be1a

Bug 695491: parallel make fail due to pconfig.h

Create a target for pconfig.h and have it as a dependency where required,
rather than have each individual target that needs it copy pconf.h to
pconfig.h which could cause a "collision" during a parallel build.

No cluster differences.

pcl/pcl.mak
pl/pl.mak
psi/psi.mak
pxl/pxl.mak
xps/xps.mak


2014-09-17 12:23:05 +0100
Chris Liddell <chris.liddell@artifex.com>
ec56638c8cc6176c2ee935a7ba43cd0af2a02fd1

Bug 695492: fix seg fault regression with '-h'

When called with the '-h' parameter, we don't fully initialise the PS
interpreter. In which case, we shouldn't try to use the PS interpreter
when we shut down.

No cluster differences.

gs/psi/imain.c


2014-09-15 19:33:32 -0700
Ray Johnston <ray.johnston@artifex.com>
b66f287128616340b68243bf5384acac066db561

Fix colors for -sDEVICE=bitrgb -dGrayValues=16

This device was using the default, but that code was encoding the
color as 5x5x5 RGB since the bit device selects a color_info.depth
of 16. Import the logic and fix it for the 4-bit RGB case (12-bit
values in 16-bit pixels).

gs/devices/gdevbit.c


2014-09-15 17:51:56 -0700
Ray Johnston <ray.johnston@artifex.com>
10d517b4954e5adaaf7cc8d823db68e8e1b157f3

Fix the -dRGB option to work with BITS = 1, 2, 4 or 8

Note that the -sDEVICE=bitrgb -dGrayValues=16 was broken due to
improper encoding. This will be fixed in a separate commit.

gs/lib/viewraw.ps


2014-09-15 08:59:08 -0700
Ray Johnston <ray.johnston@artifex.com>
eb486a42382152c5d7448eabfa7e7a40f8226c81

Improvements for viewraw.ps with RGB input for 1 and 2 bpc.

Note BITS=4 is still not supported.

gs/lib/viewraw.ps


2014-09-16 14:01:36 +0100
Ken Sharp <ken.sharp@artifex.com>
2e619c7a51e45c05c3d02792c3353b3c731f3884

pdfwrite - mark freshly opened device as 'open'

When using the '%d' format for output files, the pdf_output_page() routine
closes and reopens the pdfwrite device (to flush the device, creating
a PDF file). However, it doesn't mark the 'is_open' member of the device,
and pdfwrite doesn't do that itself, relying on the caller (normally
gs_opendevice()) to set the flag.

Later we get a setpagedevice, this executes .setdevice which calls
gs_setdevice_no_erase() which checks dev->is_open and if it is not open
then it opens it. This causes pdf_open to allocate all kinds of new
memory areas, without freeing the old ones, as well as temporary files and
possibly other structures/memory allocations.

Surprisingly this doesn't actually seem to cause a problem, but its not
right, and surely will cause problems one day, its definitely causing
memory leaks in non-GC interpreters.

So this tiny commit just sets the flag is_open when we open the device in
pdf_output_page.

No differences expected

gs/devices/vector/gdevpdf.c


2014-09-15 11:02:09 +0100
Chris Liddell <chris.liddell@artifex.com>
d0816120fdae4e9592269d98e933cbdf99faad5e

Bug 695483: disable BGPrint before we shutdown interpreter

Before we start the process of shutting down the PS interpreter, disable BGPrint
(and set NumRenderingThreads to 0, just for safety). If we don't do this, the
"parent" rendering thread will continue preparations for the next page whilst
we shutdown the interpreter, and will thus attempt to access some objects
subject to garbage collection (such as the I/O device table).

Additionally, when a device switches from BGPrint enabled to disabled, make sure
we tear down the rendering thread(s) and get rid off the BGPrint related data.

No cluster differences.

gs/base/gdevprn.c
gs/psi/imain.c


2014-09-15 10:21:18 +0100
Chris Liddell <chris.liddell@artifex.com>
0d22694c3798bf13120be35322b7984fd2296e0f

Bug 695486: initialise c_alone in current chunk (cc)

When we (re-)initialise an allocator, we have to initialise the contents of the
current chunk (cc) entry - initialise to "false" since that's the common case.

No cluster differences.

gs/base/gsalloc.c


2014-09-15 15:19:46 +0100
Ken Sharp <ken.sharp@artifex.com>
a7b8c4f39f0f8f1f0872c2ae8faff1ddd35cbdb2

pdfwrite - free pdfwrite's 'complete' font copy if required

Bug #695484 "Regression: seg fault with debug build in pdfwrite starting with ceb5e2f006bf554a56701ee2f2c228841b324a4b"

The problem was caused because pdfwrite can maintain two copies of a font,
a subset and a complete copy, depending on settings. We were properly freeing
the subset, but not the complete copy.

This has been a long-standing undetected memory leak, but only on systems
without garbage collection, because the copied font is subject to GC, and
indeed this was causing the actual fault. When we restored at the end of the
file, the copied font was garbage collected, which caused it to try nd free
any glyphs from its font cache. But the font cache is now (since the commit
in the bug title) pointing at the pdfwrite font cache, and that has already
been freed before we get to the end of job restore, resutling in a seg fault.

Here we free the complete font copy if one has been allocated.

No differences expected.

gs/devices/vector/gdevpdtd.c


2014-09-14 23:00:08 -0600
Henry Stiles <henry.stiles@artifex.com>
0614577faa0b89574b0d9c6c9cabe77398183a40

Fix Bug 695481 - Barcode font scaled incorrectly.

The downloaded font in this file (the barcode) used the typeface
family designation of 0 which is reserved for the lineprinter font.
Our interpreter scales lineprinter specially and identifies
lineprinter with its typeface number (0), thus the barcode font was
scaled as if it were the lineprinter font. Now we check the typeface
number is 0 and the font is internal which will uniquely identify the
lineprinter font and not confuse other fonts with it.

Technically the font is broken and shouldn't be accepted, the typeface
family numbers documented by HP should not be reused by downloaded
fonts, but HP printers seem to print the job.

pcl/pctext.c


2014-09-12 14:49:08 +0100
Chris Liddell <chris.liddell@artifex.com>
94786ac00b285be997aaddbc689180478a47e270

Get rid of last vestiges of pswrite....

Remove epswrite (the final "subdevice" of pswrite) and references to it.

Also remove the gdevps.c source file.

Cluster differences only in files that enumerate the devices list, for
example:
430-01.ps

doc/who_owns_what.txt
gs/Makefile.in
gs/base/macos-mcp.mak
gs/base/macosx.mak
gs/base/openvms.mak
gs/base/openvms.mmk
gs/base/unix-gcc.mak
gs/base/unixansi.mak
gs/configure.ac
gs/devices/devs.mak
gs/devices/vector/gdevps.c
gs/lib/eps2eps
gs/lib/eps2eps.bat
gs/lib/eps2eps.cmd
gs/man/ps2ps.1
gs/psi/msvc.mak
gs/psi/os2.mak
gs/toolbin/pre.chk


2014-09-10 11:57:10 -0700
Ray Johnston <ray.johnston@artifex.com>
ea6290b302598f13e7fb4c29aff73657989e693d

Fix Bug 695471, cust 532. /SMask /None did not remove prior SMask

The 'gssmask' proc in pdf_draw.ps doesn't remove a previous SMask
when the ExtGState is set to /SMask /None. Change the logic to
issue a "dummy" .begintransparencymaskgroup (that does NOT have a
corresponding .endtransparencymask) and add handling for this type
of SMask in the code. This does not result in a colorspace change,
but only frees the tos maskbuf. Seen with MSN_Chrome.pdf

gs/Resource/Init/pdf_draw.ps
gs/base/gdevp14.c
gs/base/gstparam.h
gs/base/gstrans.c


2014-08-27 10:08:45 -0700
Ray Johnston <ray.johnston@artifex.com>
3b2d19e8a459610ba50560ee004eae8736644dc1

Add lib/viewraw.ps utility to view "raw" files

An extended version of lib/viewcmyk.ps so that "raw" output from
bit, bitrgb or bitcmyk can be displayed or converted. For example:
gswin32c -sDEVICE=bitrgb -dGrayValues=256 -o x.rgb examples/tiger.eps
can be viewed with:
gswin32c -dRGB -dBITS=8 -- lib/viewraw.ps x.rgb 612

gs/lib/viewraw.ps


2014-09-08 13:52:07 +0100
Chris Liddell <chris.liddell@artifex.com>
fcb0c5ee27b9d5a769545f547ee7afdcf8e9829f

Bump version.

Usual cluster differences.....

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2014-09-22 11:12:44 +0100
Chris Liddell <chris.liddell@artifex.com>
8b2e4263a230d0e7cb262532e0f347976f4b289a

Update stuff for release

gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-09-17 12:23:05 +0100
Chris Liddell <chris.liddell@artifex.com>
404e71e01ad665deb7435fe37aad6034380297e3

Bug 695492: fix seg fault regression with '-h'

When called with the '-h' parameter, we don't fully initialise the PS
interpreter. In which case, we shouldn't try to use the PS interpreter
when we shut down.

No cluster differences.

gs/psi/imain.c


2014-09-16 11:48:12 +0100
Chris Liddell <chris.liddell@artifex.com>
96a55a20f5b0d852d2118a1ac318293c6a0f716e

Update docs, dates etc for second release candidate.

gs/base/gscdef.c
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-09-15 11:02:09 +0100
Chris Liddell <chris.liddell@artifex.com>
551d7dd426fe8ab7f2c0c9d90339784e2b643bad

Bug 695483: disable BGPrint before we shutdown interpreter

Before we start the process of shutting down the PS interpreter, disable BGPrint
(and set NumRenderingThreads to 0, just for safety). If we don't do this, the
"parent" rendering thread will continue preparations for the next page whilst
we shutdown the interpreter, and will thus attempt to access some objects
subject to garbage collection (such as the I/O device table).

Additionally, when a device switches from BGPrint enabled to disabled, make sure
we tear down the rendering thread(s) and get rid off the BGPrint related data.

No cluster differences.

gs/base/gdevprn.c
gs/psi/imain.c


2014-09-15 10:21:18 +0100
Chris Liddell <chris.liddell@artifex.com>
51b9c7dc2a471b9c3dfe6400c0a55d90db4fec16

Bug 695486: initialise c_alone in current chunk (cc)

When we (re-)initialise an allocator, we have to initialise the contents of the
current chunk (cc) entry - initialise to "false" since that's the common case.

No cluster differences.

gs/base/gsalloc.c


2014-09-15 15:19:46 +0100
Ken Sharp <ken.sharp@artifex.com>
fec643c7e29810c0c5381bd86ba31ff3595bc9ba

pdfwrite - free pdfwrite's 'complete' font copy if required

Bug #695484 "Regression: seg fault with debug build in pdfwrite starting with ceb5e2f006bf554a56701ee2f2c228841b324a4b"

The problem was caused because pdfwrite can maintain two copies of a font,
a subset and a complete copy, depending on settings. We were properly freeing
the subset, but not the complete copy.

This has been a long-standing undetected memory leak, but only on systems
without garbage collection, because the copied font is subject to GC, and
indeed this was causing the actual fault. When we restored at the end of the
file, the copied font was garbage collected, which caused it to try nd free
any glyphs from its font cache. But the font cache is now (since the commit
in the bug title) pointing at the pdfwrite font cache, and that has already
been freed before we get to the end of job restore, resutling in a seg fault.

Here we free the complete font copy if one has been allocated.

No differences expected.

gs/devices/vector/gdevpdtd.c


2014-09-14 23:00:08 -0600
Henry Stiles <henry.stiles@artifex.com>
d10d0b9f9a4c11ef11f08849cf0f0f0405ada6c6

Fix Bug 695481 - Barcode font scaled incorrectly.

The downloaded font in this file (the barcode) used the typeface
family designation of 0 which is reserved for the lineprinter font.
Our interpreter scales lineprinter specially and identifies
lineprinter with its typeface number (0), thus the barcode font was
scaled as if it were the lineprinter font. Now we check the typeface
number is 0 and the font is internal which will uniquely identify the
lineprinter font and not confuse other fonts with it.

Technically the font is broken and shouldn't be accepted, the typeface
family numbers documented by HP should not be reused by downloaded
fonts, but HP printers seem to print the job.

pcl/pctext.c


2014-09-12 14:49:08 +0100
Chris Liddell <chris.liddell@artifex.com>
f4034b2aa85e685c66e98be8c31c511cd9a5169e

Get rid of last vestiges of pswrite....

Remove epswrite (the final "subdevice" of pswrite) and references to it.

Also remove the gdevps.c source file.

Cluster differences only in files that enumerate the devices list, for
example:
430-01.ps

doc/who_owns_what.txt
gs/Makefile.in
gs/base/macos-mcp.mak
gs/base/macosx.mak
gs/base/openvms.mak
gs/base/openvms.mmk
gs/base/unix-gcc.mak
gs/base/unixansi.mak
gs/configure.ac
gs/devices/devs.mak
gs/devices/vector/gdevps.c
gs/lib/eps2eps
gs/lib/eps2eps.bat
gs/lib/eps2eps.cmd
gs/man/ps2ps.1
gs/psi/msvc.mak
gs/psi/os2.mak
gs/toolbin/pre.chk


2014-08-27 10:08:45 -0700
Ray Johnston <ray.johnston@artifex.com>
bbe97e4cfc3d725f42ae34125c716902faf72977

Add lib/viewraw.ps utility to view "raw" files

An extended version of lib/viewcmyk.ps so that "raw" output from
bit, bitrgb or bitcmyk can be displayed or converted. For example:
gswin32c -sDEVICE=bitrgb -dGrayValues=256 -o x.rgb examples/tiger.eps
can be viewed with:
gswin32c -dRGB -dBITS=8 -- lib/viewraw.ps x.rgb 612

gs/lib/viewraw.ps


2014-09-08 14:47:15 +0100
Chris Liddell <chris.liddell@artifex.com>
540a228f026bf3abd288d5e88a7ef74345600380

Update docs, versions and dates for release candidate.

gs/base/gscdef.c
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1



Version 9.15 (2014-09-22)

This is the eleventh full release in the stable 9.x series, and is primarily a maintenance release.

Highlights in this release include:

For a list of open issues, or to report problems, please visit bugs.ghostscript.com.

Incompatible changes

No recorded incompatible changes.

Changelog

2014-09-08 09:36:19 +0100
Chris Liddell <chris.liddell@artifex.com>
551d7dd426fe8ab7f2c0c9d90339784e2b643bad

Bug 695483: disable BGPrint before we shutdown interpreter

Before we start the process of shutting down the PS interpreter, disable BGPrint
(and set NumRenderingThreads to 0, just for safety). If we don't do this, the
"parent" rendering thread will continue preparations for the next page whilst
we shutdown the interpreter, and will thus attempt to access some objects
subject to garbage collection (such as the I/O device table).

Additionally, when a device switches from BGPrint enabled to disabled, make sure
we tear down the rendering thread(s) and get rid off the BGPrint related data.

No cluster differences.

gs/base/gdevprn.c
gs/psi/imain.c


2014-09-15 10:21:18 +0100
Chris Liddell <chris.liddell@artifex.com>
51b9c7dc2a471b9c3dfe6400c0a55d90db4fec16

Bug 695486: initialise c_alone in current chunk (cc)

When we (re-)initialise an allocator, we have to initialise the contents of the
current chunk (cc) entry - initialise to "false" since that's the common case.

No cluster differences.

gs/base/gsalloc.c


2014-09-15 15:19:46 +0100
Ken Sharp <ken.sharp@artifex.com>
fec643c7e29810c0c5381bd86ba31ff3595bc9ba

pdfwrite - free pdfwrite's 'complete' font copy if required

Bug #695484 "Regression: seg fault with debug build in pdfwrite starting with ceb5e2f006bf554a56701ee2f2c228841b324a4b"

The problem was caused because pdfwrite can maintain two copies of a font,
a subset and a complete copy, depending on settings. We were properly freeing
the subset, but not the complete copy.

This has been a long-standing undetected memory leak, but only on systems
without garbage collection, because the copied font is subject to GC, and
indeed this was causing the actual fault. When we restored at the end of the
file, the copied font was garbage collected, which caused it to try nd free
any glyphs from its font cache. But the font cache is now (since the commit
in the bug title) pointing at the pdfwrite font cache, and that has already
been freed before we get to the end of job restore, resutling in a seg fault.

Here we free the complete font copy if one has been allocated.

No differences expected.

gs/devices/vector/gdevpdtd.c


2014-09-14 23:00:08 -0600
Henry Stiles <henry.stiles@artifex.com>
d10d0b9f9a4c11ef11f08849cf0f0f0405ada6c6

Fix Bug 695481 - Barcode font scaled incorrectly.

The downloaded font in this file (the barcode) used the typeface
family designation of 0 which is reserved for the lineprinter font.
Our interpreter scales lineprinter specially and identifies
lineprinter with its typeface number (0), thus the barcode font was
scaled as if it were the lineprinter font. Now we check the typeface
number is 0 and the font is internal which will uniquely identify the
lineprinter font and not confuse other fonts with it.

Technically the font is broken and shouldn't be accepted, the typeface
family numbers documented by HP should not be reused by downloaded
fonts, but HP printers seem to print the job.

pcl/pctext.c


2014-09-12 14:49:08 +0100
Chris Liddell <chris.liddell@artifex.com>
f4034b2aa85e685c66e98be8c31c511cd9a5169e

Get rid of last vestiges of pswrite....

Remove epswrite (the final "subdevice" of pswrite) and references to it.

Also remove the gdevps.c source file.

Cluster differences only in files that enumerate the devices list, for
example:
430-01.ps

doc/who_owns_what.txt
gs/Makefile.in
gs/base/macos-mcp.mak
gs/base/macosx.mak
gs/base/openvms.mak
gs/base/openvms.mmk
gs/base/unix-gcc.mak
gs/base/unixansi.mak
gs/configure.ac
gs/devices/devs.mak
gs/devices/vector/gdevps.c
gs/lib/eps2eps
gs/lib/eps2eps.bat
gs/lib/eps2eps.cmd
gs/man/ps2ps.1
gs/psi/msvc.mak
gs/psi/os2.mak
gs/toolbin/pre.chk


2014-08-27 10:08:45 -0700
Ray Johnston <ray.johnston@artifex.com>
bbe97e4cfc3d725f42ae34125c716902faf72977

Add lib/viewraw.ps utility to view "raw" files

An extended version of lib/viewcmyk.ps so that "raw" output from
bit, bitrgb or bitcmyk can be displayed or converted. For example:
gswin32c -sDEVICE=bitrgb -dGrayValues=256 -o x.rgb examples/tiger.eps
can be viewed with:
gswin32c -dRGB -dBITS=8 -- lib/viewraw.ps x.rgb 612

gs/lib/viewraw.ps



Ken Sharp <ken.sharp@artifex.com>
8605f67582ae2e2e619ab6fbab9888a23f37fdb9

pdfwrite - tidy up some compiler warnings

No effect, just silences the compiler or scan-build.

gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpsdp.c


2014-09-04 14:49:21 +0100
Chris Liddell <chris.liddell@artifex.com>
b4c9acd0ca532d19421fdf83aa9ad71895fad753

Remove the uproduct and co targets.

Replaced (for now) with a brief message about being unsupported, and to use
configure --with-ufst=<>

No cluster differences.

Makefile


2014-09-04 14:34:58 +0100
Chris Liddell <chris.liddell@artifex.com>
91e8954e01996853ce6dc1318465c7b55e9d1f90

Better mkromfs support for cross compile

When cross compiling between platforms of differening endianness, mkromfs will
now create output usable on the target architecture.

No cluster differences.

gs/base/mkromfs.c


2014-09-04 14:31:25 +0100
Chris Liddell <chris.liddell@artifex.com>
bfeeadc3d534cb01fe6dd3bfb21a0af1e55b0a48

Tweak "search" for default CID fallback font.

Fix an issue where the default fallback font could not be found if the
GenericResourceDir was a relative path.

No cluster differences.

gs/Resource/Init/gs_cidtt.ps


2014-09-05 15:03:05 +0100
Ken Sharp <ken.sharp@artifex.com>
201ff60b950912c09d22b3b4ed0b57ed75c3587a

pdfwrite - consume Distiller params even when LockDistillerparams is true

Bug #695468 "/rangecheck in .installpagedevice error when combining LockDistillerParams, setpagedevice, and restore"

Previously when LockDistillerParams was true the distiller param parsing
code did not get called. This left the Distiller parameter key/value
pairs 'untouched' in the parameter list.

Ordinarily this is not a problem, but .installpagedevice, which is called
during restore to reset the page device parameters, insists that all keys
must be consumed and throws an error if they are not.

This patch alters the distiller parameter parsing to read all the parameters
no matter what the setting of LockDisillerParams. The values are read into
a dummy parameter structure, when complete they are either copied back to
the real structure or, if LockDistillerParams is set, discarded. If we
discard the parameters we clean up the memory rather than relying on garbage
collection to do it for us.

I don't think the pdfwrite device currently does this when the device is
closed, which would be a memory leak, if we ever decide we need to address
this then we can use the code here.

No differences expected.

gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpsdp.c


2014-09-04 13:16:48 +0100
Ken Sharp <ken.sharp@artifex.com>
ce3445892ca6094a5c681667b1ecc1aa07c87254

Improved form handling of clip areas

Bug #695307 "Preservation of PostScript form elides form content"

When a device (such as pdfwrite) hands back a matrix to set as the CTM
(pdfwrite does this to capture the form unscaled), we need to account for
that CTM when we reset the clip, otherwise we can end up clipping content.

Also, rather than using +/- page boundaries, we use +/- the form BBox.

This shows 2 minor progressions in the test suite.

gs/psi/zform.c


2014-09-02 15:27:25 +0100
Ken Sharp <ken.sharp@artifex.com>
ceb5e2f006bf554a56701ee2f2c228841b324a4b

Address leaking font cache in PCL interpreter

Bug #695017 "pcfont_do_reset() leaks memory"

The PCL interpreter should free its font cache on exit, but it does not.
This is because of the fact that when we copy fonts the font cache of the
original font is copied to the font cache of the copied font. Later, when
a high level device wants to retrieve glyph information, the font code
uses the font cache from the copied font.

This doesn't immediately seem like a problem, it seems like we should be
able to defer freeing the font cache until after we've closed the device,
and that would satisfy pdfwrite. However, the way that PCL 'passthrough'
works, the PCL interpreter can be run 'inside' the PXL interpreter. If we
free the PCL interpreter font cache when it exits then pdfwrite has font
copies which are still pointing at the freed font cache.

We did discuss having the PCL/PXL interpreter set the gs_lib_ctx font_dir
(it currently dos not do so) and having pdfwrite set the font cache of the
fonts it copies use that, instead of the font cache from the original font.
But this seemed to me likely to run into the possibility of the same problem
recurring in future.

Instead, we have pdfwrite create and maintain its own font cache. When pdfwrite
copies a font it replaces the font cache pointer (which is initially the same
as the original font) with the new pdfwrite-specific font cache.

This means that any interpreter can free its font cache and pdfwrite will
still be able to use its own font cache when retrieving glyph information.

This commit includes both the changes to pdfwrite to enable the new font cache
and the changes to the PCL/PXL interpreter to free the font cache when the
interpreter is done with it.

No differences expected.

gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdtb.c
pcl/pcfont.c


2014-09-02 09:40:20 +0100
Chris Liddell <chris.liddell@artifex.com>
884b9e456336b1fd7ddb3c50726be5469159421a

Bug 695235: off-by-one error in trio

Tweak to deal with off-by-one errors due to casting of doubles in trio.

No cluster differences.

gs/trio/trio.c


2014-08-29 17:19:58 +0100
Chris Liddell <chris.liddell@artifex.com>
c670fd6b0852aa057103632630bab81c9317b613

Tweak the libtiff configure invocation to use relative paths.

No cluster differences.

configure.ac
gs/configure.ac


2014-08-29 16:05:38 +0100
Chris Liddell <chris.liddell@artifex.com>
d0c3d8e6b0f5ce246ad5e3d08b1628b529f99582

Add quoting around paths for libtiff configure.

No cluster differences.

configure.ac
gs/configure.ac


2014-08-28 10:09:41 +0100
Ken Sharp <ken.sharp@artifex.com>
3ff453592e3ae6d98a640047765a5baf1e345964

More work with setpagedevice

commit 55bd0a59caf26a59f852e2dec5b76ad399d9408b fixed the problems with
RedValues and friends, but at the cost of preventing these keys being set
by setpagedevice.

This commit allows them to be set by creating a 'write only' dictioanry
whose keys are removed from the initial device dictionary before we make it
read-only and send it to setpagedevice.

See the comments in the commit for further details.

No differences expected.

gs/Resource/Init/gs_setpd.ps


2014-08-27 14:45:33 +0100
Ken Sharp <ken.sharp@artifex.com>
55bd0a59caf26a59f852e2dec5b76ad399d9408b

Fix setpagedevice so that changing ProcessColorModel works

Bug #695439 "Reference to free memory, or segfault with release build"

The problem is the horrendous way our implementation of setpagedevice works.
Where we should query the device for its parameters, our implementation
maintains a dictionary (initially built by querying the device) which is
updated by calls to setpagedevice.

Clearly at some time in the past someone has discovered that this breaks
badly if the device changes a parameter itself, as this won't be reflected
in the saved dictionary. So the '.dynamicppkeys' dictionary was defined,
whose sole purpose is to hold a list of keys whose values must be refreshed
from the device.

However, this dictionary is *also* used to prevent those same keys being
sent to the device.....

This means that commit 2eda51b48c7e97adf7c46fc3d7eb34fcdf6061e6 prevented
any changes to OutputICCProfile being sent to the device.

So I've now made 2 dictionaries with separate purposes, one is for 'read only'
keys which should not be sent to the device, and one which contains the list
of keys which must be read back from the device to replace the stored values
in our dictionary. Keys may appear in both, either, or neither.

The problem in this bug is that we create our initial dictionary when the
device is in DeviceRGB, and we store the RedValues, GreenValues, BlueValues
and GrayValues from the device in our stored dictionary. Then we execute
code to change the ProcessColorModel to DeviceGray. This alters the values
of the RedValues etc in the device. But these are *not* copied into our
stored dictionary. Later we call .installpagedevice which does not change
the ProcessColorModel, but does attempt to set the RedValues etc, which are
invalid for a DeviceGray ProcessCOlorModel, leading to a rangecheck.

I had hoped that adding these keys to the volatile dictionary would be
sufficient to fix the problem, but it seems that we don't update our stored
dictionary with these parameters. The only way to fix this turned out to be
to add the keys to the 'read only keys' dictionary so that we don't try and
send them to the device.

I'm not completely sure this is sensible, it isn't obvious to me what these
values are for, so I can't be certain that they should become 'read only'.
However, its the simplest way to solve this problem.

Of course the right way to fix this is to change our horrible setpagedevice
code so that it works the way the spec says it should.

The fix described above resolves the memory warning for me as well.

No differences expected.

gs/Resource/Init/gs_setpd.ps


2014-08-25 15:16:13 +0100
Ken Sharp <ken.sharp@artifex.com>
5ce2fca754b4ba5bce4194bae382ef1d46abaf00

pdfwrite - fix handling of Tx fields in AcroForms

Bug #695438 "AcroForm text fields not being rendered"

There are multiple parts to this fix.

1) Alter the default of the NeedAppearances key in AcroForms and AcroForm
field dictionaries to true so that if its not present we will generate
Appearances for fields which have none. (we still won't generate them if
the field is present and set to false, though Acrobat does)

2) Fix the Length key of the Form dictionary we generate for Tx fields,
previously it was set to 0, so the form wasn't ever executed.

3) If there is no 'V' key in the Field dictionary for a Tx field, use the
/DV key instead. If still no key then use an empty string.

These changes uncovered some interesting additional problems.

1) Bug687498 has an AcroForm with a Tx field, declared as multiline, where
the actual data is an empty string. Now that we actually execute the Form
this causes an error. Add a check to treat strings with less than 2 bytes
as single line, so that splitstring doesn't throw an error.

2) Bug692477.pdf, now that we default 'NeedAppearances' to true, we discover
that this file has a Fields array where every element is the null object,
which causes errors trying to extract dictionary key/value pairs from it.
Add a check to see that the Field element is a dictionary, and ignore it if
it isn't.

No differences expected, we don't test with -dShowAcroForm

gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_main.ps
gs/Resource/Init/pdf_ops.ps


2014-08-20 08:54:16 -0700
Ray Johnston <ray.johnston@artifex.com>
2eda51b48c7e97adf7c46fc3d7eb34fcdf6061e6

Bug 695420: Bad pointer to OutputICCProfile string.

This was caused by the gs_setpd.ps logic having a dictionary that has the
OutputICCProfile pointing to dev->icc_struct->device_profile[0]->name, but
when ColorConversionStrategy distillerparam is set, it does a rc_decrement
on the pdev->icc_struct which frees the entire structure, among those the
'name' (which was allocated in non_gc_memory).

Add the OutputICCProfile to the list of .dynamicppkeys in gs_setpd.ps so
that the string will always be updated and the dictionary won't have a
stale pointer.

Having a dict with a string in non_gc_memory is OK I guess, even though
we generally "hide" all non_gc_memory elements from the GC.

gs/Resource/Init/gs_setpd.ps


2014-07-24 17:41:32 -0700
Ray Johnston <ray.johnston@artifex.com>
b181cc746811d2920cfe183d8fd341de944d65b3

Add a missing condition for devices that need tags to pdf14_recreate_device.

Customer 532 has done extensive testing and uses tags. This change
is in their code.

gs/base/gdevp14.c


2014-08-18 16:40:53 +0100
Ken Sharp <ken.sharp@artifex.com>
727340d4bd2a42b2793d00c3b5cd36facdf26e92

pdfwrite - fix a ShadingType 5 with array DataSource and a Function

Bug #695359 "Wrong gradients after conversion to PDF"

The example file is a hand-coded shading of type 5 with the DataSource
being an array, but using a function to convert the parametric value at
each vertex into a colour value.

The PDF specification doesn't support this kind of shading, so we need
to convert it. In doing so we write out a Decode array, which needs to contain
the minimum and maximum colour values. Ordinarily we get these from the
shading dictionary, but when using an array for DataSource this is not
present. In the absence of the Decode array we were defaulting to 0 and 1
but the function actually has a range from 0 to 10. This meant we were
truncating the colour space.

This commit examines the Function (if present) and uses the Domain of the
function as the values instead of 0 and 1.

This may not be sufficient in the absolute general case, but all mesh
shadings are rare in real world files, and mesh shadings using array
DataSource are still less common, as are examples with a function which
does not have a Domain 0-1. So this will suffice until we see more
problems.

Note that Acorbat Distiller X produces different output if you run the
two shadings in the example file separately instead of consecutively. Also
Acrobat X displays the resulting file from both Distiller and Ghostscript
incorrectly (Acrobat XI displays them correctly)

No differences expected.

gs/devices/vector/gdevpdfv.c


2014-08-18 09:15:48 +0100
Ken Sharp <ken.sharp@artifex.com>
db7668753ca114aabc4d34063876732dc043e9b8

PDF interpreter - read BPC from the JPX stream instead of the resource dict

Bug #695387 "PDF with jpeg2000 conversion problems"

The PDF spec states (table 4.39, BPX on page 340 of the PDF Rerference)
that the Bits Per Component value is to be taken from the JPX stream and
the image dictionary value should be ignored if present. We were only
reading the BPC if either that to the ColorSpace was missing from the
image dictionary.

In this commit we *always* pare the data out of the JPX stream (which is
a small performance penalty). However, this always overwrites the data in
the resource dictionary, which is fine for BPX< but not acceptable for the
colour space, because Acrobat favours the ColorSpace in the
image dictionary over the JPX colour space, and because we set the colour
space to be DeviceGray for softmasks.

So we save the colour space from the resource dictionary (if present), read
the BPC and colour space then, if we had a colour space in the resource
dictionary we restore it back again.

For some reason this causes problems on the cluster with the test file
Bug688845.eps. Since this change only affects JPX images, and PDF files, I
can't see any way that the change can be responsible for this. I am unable
to reproduce the problem on Windows or Linux locally.

gs/Resource/Init/pdf_draw.ps


2014-08-15 11:30:01 +0100
Chris Liddell <chris.liddell@artifex.com>
a7e8f7592a9861f83dbb94b8b545961caca864ce

Bug 694160: Prevent malicious code being injected into the system.

This is essentially the same patch as committed in:
4fc4b8410d35b193d549558ab212cc727db9460b

but that patch was missing white space at the ends of automatically
concatenated strings - hence the interpreter saw, for example:
".systemexecend" rather than ".systemexec end".

Additionally, to avoid that confusion in the future, I've removed the reliance
on the automatic string concatenation.

Also removed a spurious additional call to ".uninstallpagedevice".

No cluster differences.

gs/Resource/Init/gs_init.ps
gs/psi/imain.c


2014-08-15 10:14:36 +0100
Ken Sharp <ken.sharp@artifex.com>
1db534ed2b1277b265652d4b660b11e957a3e0bf

Revert commit 4fc4b8410d35b193d549558ab212cc727db9460b

See bug #694160 and #695420. Somehow this patch ends up leaving 'quit'
undefined at the end of job, which breaks the '-o' switch. It also somehow
manages to break at least some pdfwrite incantations, leading to an undefined
error with a garbage caller. It kind of looks like the name table is
broken or similar.

Note that the undefined error on quit occurs when running GS interactively
and even when this happens, "systemdict /quit get exec" works, so its not
as simple as /quit being undefined.

No differences expected.

gs/Resource/Init/gs_init.ps
gs/psi/imain.c


2014-08-13 20:33:36 +0100
Chris Liddell <chris.liddell@artifex.com>
062f4b4536b7b3fa1742e31c05dc57fe241d6690

Bug 695423: follow up.

Fix the description comments.

No cluster differences

gs/devices/devs.mak


2014-08-13 19:28:04 +0100
Gerard Belanger <gbelanger@practicalautomation.com>
25a0cd96ac4b44d96e27c435dad5cc2c31788733

Bug 695423: Add current generation printers to gdevatx.c

Practical Automation printers.

No cluster differences.

gs/configure.ac
gs/devices/devs.mak
gs/devices/gdevatx.c


2014-08-12 10:17:01 +0100
Ken Sharp <ken.sharp@artifex.com>
9a80562145b25a7166bd7c8e005446bd306be34e

ps2write - fix conversion of TrueType fonts with format 0 LOCA tables

Bug #695417 "gs(ps2write) produce invalid ps from certain LibreOffice print emission"

The code in the opdfread prolog for converting TrueType fonts to type 42
fonts was completely broken for fonts with a format 0 LOCA table (16 bit
offsets). The offending routine is StringToLoca.

The code was reading 32 bits instead of 16, which causes it to exhaust
the string data, leaving array members uninitialised, which is the inital
cause of the error. However, it also didn't multiply the offsets it did
read by 2 (format 0 LOCA offsets are multiplied by 2), and had a 'dup'
which resulted in the stack having the wrong value on top on exit.

No differences expected

gs/devices/vector/opdfread.h
gs/lib/opdfread.ps


2014-08-11 21:22:46 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
4fc4b8410d35b193d549558ab212cc727db9460b

Bug 694160: Prevent malicious code being injected into the system.

gs/Resource/Init/gs_init.ps
gs/psi/imain.c


2014-08-08 11:55:55 +0100
Ken Sharp <ken.sharp@artifex.com>
5be9d0429b79f53b0e074fb1042cf3e88134ba0d

remove an unused variable to silence a compiler warning

gs/devices/gdevtsep.c


2014-08-08 10:07:24 +0100
Ken Sharp <ken.sharp@artifex.com>
3a035a2a9e94196920f99a18670ee96202f67bb9

tiffsep - add code to print CMYK equivalents for spot inks

Bug #695407 "tiffsep should print out separation equivalent CMYK"

Patch supplied by Mateusz Lenik to print out the CMYK equivalents for every
ink in the job.

Controlled by the new PrintSpotCMYK switch, which is only supported on the
tiffsep device, documented in devices.htm.

No differences expected.

gs/devices/gdevtsep.c
gs/doc/Devices.htm


2014-08-05 13:25:01 +0100
Chris Liddell <chris.liddell@artifex.com>
5671fc9b4b5fc8abb326e60195dff7ec46d5b389

Bug 695394: fix TTF glyph encoding generation

There was a logical error in the glyph encoding generation for TT fonts,
affecting fonts without post tables.

When handling the case where the same glyph name references two different
glyphs, the index in the glyph encoding we wrote the generated name to was the
GID (i.e. the index returned from the cmap table) rather the original index
we were handling from the glyph encoding.

No cluster differences.

gs/Resource/Init/gs_ttf.ps


2014-08-01 14:50:40 +0100
Ken Sharp <ken.sharp@artifex.com>
275dc99017b96c1be74a50026479dbdf8d63192f

PDF interpreter - fix Hybrid file parsing

Bug #695403 "Error ocurred while reading XREF table"

The fix for bug #694342 treated an xref section with no entries as an error
and caused the xref to be rebuilt. However, if a PDF file is converted into
a hybrid file (one with an xref *and* an XrefStrm) by adobe CS 3, then it
does this by adding a 'dummy' xref which has a /Prev pointing to the real
xref, and a /XrefStrm pointing to the stream.

The dummy xref has a section "0 0", is first object 0, no objects defined
which falls foul of the test for Bug 694342 and causes the xref to be rebuilt.

This commit adds a boolean which is initially false and is set true in the
parsing loop for the xref section. When we encounter a /trailer, instead
of checking if 0 objects are defined, we now look at that boolean. If its
'true' then we have seen a section entry, and can treat this as valid, even
if no objects are yet defined. If we haven't seen a section then we treat
it as invalid and force an xref rebuild.

This causes sumatra/694313_-_empty_xref.pdf to stop producing errors as
well.

gs/Resource/Init/pdf_main.ps


2014-08-01 09:52:00 +0100
Ken Sharp <ken.sharp@artifex.com>
80395ccbe7558e324ff3cb75c3e241ce0ffd735d

ps2write - fix a bug in the debug code

The PrintHex routine assumes that PostScript integers are 32 bits wide.
This is no longer guaranteed with GS. This fix ensures that after we do
the bit shifting to isolate 4 bits for conversion to hex, we don't have
a number > 15, which could occur if the integer was sufficiently large.

This prevents the code throwing an error when debugging.

No differences expected

gs/devices/vector/opdfread.h
gs/lib/opdfread.ps


2014-07-30 15:33:00 +0100
Chris Liddell <chris.liddell@artifex.com>
9fbecef99a40d8a5b372fadf4ed99fe29c6815a9

Bug 695397: handle "unknown" glyph names >16 chars long

When creating glyph aliases for a TTF, we check for "formatted" unicode glyph
names of the form "uniWXYZ" where "WXYZ" is the glyph code point in base 16.

In doing that we use a temporary string which is 16 characters long (since the
formatted names we're interested won't be longer that 16).

So, check the glyph name is <16 chars long before checking if it's a "uni..."
style name.

No cluster differences.

gs/Resource/Init/gs_ttf.ps


2014-07-30 08:34:29 +0100
Chris Liddell <chris.liddell@artifex.com>
7a2d86136669e79742aacda148e5c70854273ca5

Bug 695380: add a simple sanity check in i_alloc_string

Checks for integer overflow.

No cluster differences.

gs/base/gsalloc.c


2014-07-29 17:26:27 +0100
Chris Liddell <chris.liddell@artifex.com>
f25cb59f2ed56df8366d03c5cb7d9b37dec77934

Bug 695319: Set pdf14 (trans) ctx to NULL on free on error

In the event of an interpreter triggered error during a transparency operation,
pdf14_discard_trans_layer() is called to clean up. It frees the context, but
didn't set the ctx pointer to NULL - thus we could try to free the already
freed context object when the pdf14 compositor device is shut down.

No cluster differences.

gs/base/gdevp14.c


2014-07-29 15:37:45 +0100
Chris Liddell <chris.liddell@artifex.com>
e889a18896e668e5e565e5ec1cada8b8a64c60a2

Bug 695318: mark memory chunks used for single allocations.

Certain chunks in the memory manager are used to contain only one (o_alone)
allocation: "large" allocations and "immovable" allocations specifically.

We need to be able to identify those chunks so we don't end up trying to use
any empty space in them for later allocations - these chhunks can end up with
empty space in them if the original object allocated in them is shrunk.

The problem that occurs is when we free an o_alone object, we immediately free
the chunk containing it, thus any other allocations in that chunk are also
freed.

Adding a c_alone flag to the chunk means we can trivially identify and skip
those chunks when searching for free memory.

No cluster differences.

gs/base/gsalloc.c
gs/base/gxalloc.h


2014-07-25 15:57:30 +0100
Chris Liddell <chris.liddell@artifex.com>
21d86e8264a6cd11f963b4c36b989ab4c0ed3294

Bug 695363: handle TTF with no/empty loca table.

A broken TT font could end up with us allocating a zero length array for
the for the glyph lengths, then later to attempt to access entries in that
array.

Thus, avoid allocating the zero length array, and treat a NULL glyph_len array
the same as a glyph_len of 0.

No cluster differences.

gs/base/gstype42.c


2014-07-24 14:26:30 -0700
Ray Johnston <ray.johnston@artifex.com>
ea4547f4bc24803f167e8a0b1a1384d9dc8af9e8

Add setting buf->backdrop to NULL when knockout is false.

Minor issue, but I did find a case where the buf->backdrop was left
uninitialized when working on customer 532 issue with fts_25_2526.pdf

gs/base/gdevp14.c


2014-06-02 21:17:54 +0200
Tor Andersson <tor.andersson@artifex.com>
23f71dd93eeac60f0ff3c58b17bcd8ccd2d971d6

xps: Remove trailing whitespace.

xps/xpsgradient.c
xps/xpsimage.c
xps/xpsjxr.c
xps/xpsopacity.c
xps/xpspath.c
xps/xpspng.c
xps/xpstiff.c


2014-06-02 21:06:47 +0200
Tor Andersson <tor.andersson@artifex.com>
eed68003a30b64649157b7dcdcfc1d5162c3bb63

xps: Allow colormapped 1-bit TIFF files.

Thanks to Norbert Janssen.

xps/xpstiff.c


2014-06-02 21:01:18 +0200
Tor Andersson <tor.andersson@artifex.com>
3b03ee5480ab38f0d7b4e2ad341385d7dffd8343

xps: Improve transparency analysis for resource dictionaries.

Thanks to Norbert Janssen.

xps/xpsanalyze.c


2014-07-22 09:09:47 +0100
Ken Sharp <ken.sharp@artifex.com>
8d3081c0403a1d911a79dce57008ede4279d050a

pdfwrite and ps2write - Mimic the -dNOCACHE output of pswrite

This feature is in response to the thread on gs-devel "pswrite and NOPLATFONTS"

Normally pdfwrite and ps2write try very hard to maintain fonts from the input
as fonts in the output, for reasons of output size, performance and qualiity.

It seems that some people are relying on using pswrite with -dNOCACHE in
order to produce PostScript output with no fonts at all. (As far as I can
see this is to address the limitations of other software). This was never
a goal for pswrite, but it seems that it works 'well enough' to be useful.

Sadly, despite us flagging the fact that pswrite had been deprecated, nobody
gave us any feedback until after (several releases after, in fact) we had
removed the device. We are not going to reinstate support for the pswrite
device, having spent effort to remove it in order to drop support for it,
so this commit adds a new feature which causes pdfwrite and friends to
write the glyph description into the content stream as it is used instead
of constructing fonts.

This is controlled with the new switch NoOutputFonts which defaults to false

There are no cluster differences with this commit. Using the switch causes
pretty much every test file which contains text to render differently.

gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdtt.c
gs/doc/Ps2pdf.htm


2014-07-21 11:02:55 +0100
Chris Liddell <chris.liddell@artifex.com>
b6575b8a91e23365b340771fc67b29819ba7937b

Have pdfwrite/ps2write "flatten" glyphs...

...into "normal" marking ops if the glyph cache is disabled.

gs/devices/vector/gdevpdtt.c


2014-07-11 13:52:31 +0100
Chris Liddell <chris.liddell@artifex.com>
f35a388327055a3a2635c91f5e1080af6d957d37

Bug 694205: prevent crash rendering unfeasibly large glyph

Initialise the "prev" entry in the top node in the x line list to null and
check it isn't null before we use it. If we reach that point, it indicates that
a) the current path reaches (and probably passes) the limits of our coordinate
space and b) the line list is already in the correct order - as best it can be,
anyway.

No cluster differences.

gs/base/gxfill.c


2014-07-16 13:14:42 -0600
Henry Stiles <henry.stiles@artifex.com>
56162c7c6c55bd2f98e4a25fa399c0a5865f7249

Bug #695367 - Writing a 64 bit integer into a 32 bit format specifier
corrupted sprintf's variadic argument list on some (windows)
platforms.

gs/devices/vector/gdevxps.c


2014-07-14 16:05:36 -0600
Henry Stiles <henry.stiles@artifex.com>
ef4150919c5dc6c0fcf441cc499a3250d8a6529e

Use a conditional form feed when selecting a page side, #695325.

pcl/pcjob.c


2014-06-27 06:59:09 -0600
Henry Stiles <henry.stiles@artifex.com>
a6fc36d436fa166c87d4d75d3f7d037f80cf6ce6

Bring comment in line with recent changes to the printable region.

pcl/pcxfmst.h


2014-07-07 12:31:13 +0100
Ken Sharp <ken.sharp@artifex.com>
4823edf7be9b8dd1e40306e1b5e0f0edbecb84be

pdfwrite - prevent closing the device if its not open

Bug #694380 "Seg fault in pdfwrite"

The file in question throws an error in pdfwrite when we try to write a
FontDescriptor (the font is broken). The PDF interpreter, however,
often ignores errors and continues trying to process the input file.

When producing one output file this is not a problem, as the error occurs
in pdf_close() and so it all works. However, when producing one file per
page this fails, because we close the device, notice the error, and
do not open it anew. However the PDF interpreter just carries on. When we
come to the end of the next page we try to close a device which is already
closed, and this means we try to dereference an invalid pointer.

In this commit we check the 'is_open' flag of the device in pdf_close and
if the device is not open then we jump straight back out. We also set is_open
to false in the same routine as it wasn't previously being set (because we
couldn't previously close and reopen the device).

This fixes the problem with Bug693711.pdf for me.

gs/devices/vector/gdevpdf.c


2014-07-07 09:00:20 +0100
Ken Sharp <ken.sharp@artifex.com>
84bdbfec67808ea22ec152a56bcb33655ef084aa

pdfwrite - add an include file for a prototype, silences a compiler warning

gs/devices/vector/gdevpdfk.c


2014-07-04 12:02:59 +0100
Ken Sharp <ken.sharp@artifex.com>
ddae2b83fd7e91053d62b2d4533e850fdba341bf

pdfwrite - fix memory corruption caused by type 3 capture of PCL fonts

Bug #695350 "GhostPCL line shifting"

It was impossible to reproduce this bug exactly as the reporter is running
Ghostscript on an unusual platform. Fortunately what appears to be the same
problem could be reproduced on a PowerPC Mac running Linux. It is possible
that this commit doesn't actually fix the bug though.

When capturing glyph descriptions in order to build a type 3 font from a
PCL font, we were saving the default text procedures from the enumerator
(which was created by gx_default_text_begin), and then restoring them when
we had finished processing the glyph. However, by that time we had already
releases the enumerator, which meant we were corrupting memory.

Desk checking the code, I can't see any reason for saving the procedures
from the text enumerator, and I conclude this is either a holdover from an
earlier version of this code, or an oversight when writing the code that
captured PCL fonts. In any event this commit removes the save/restore
behaviour, since it is definitely causing memory corruption.

No differences expected.

gs/devices/vector/gdevpdtt.c


2014-07-02 13:42:07 +0100
Ken Sharp <ken.sharp@artifex.com>
3bfacc81f717f6e658f3cb4575ded0c36919ec4e

pdfwrite - detect corrupted type 3 fonts and generate an errror

Bug #694186 "Seg faults found by fuzzing in names_index_ref"

The file has a corrupted glyph in a type 3 font, which throws an error.
However, pdfwrite can't tell that the glyph threw an error rather than
simply completing successfully, and tries to use the returned glyph ID. The
glyph ID is GS_NO_GLYPH which fails with a seg fault when looking up the
name.

In this commit we check the glyph ID to see if its GS_NO_GLYPH and throw an
error if it is. This prevents us looking up an invalid glyph ID in the
name table, and the file is demonstrably broken.

This fixes a1c8db... the other file, cc5c... is also fixed, but in newer
code never even makes it to this point as the current code detects a different
problem before it reaches this point.

gs/devices/vector/gdevpdtt.c


2014-07-01 17:30:17 +0100
Ken Sharp <ken.sharp@artifex.com>
4d2e447a5226bf8b1baf6f079f3e767c72928d88

pdfwrite - ensure we have V2 ICC profiles for PDF/A-1 and PDF < 1.5

Bug 695118 "PDF/A-file is generated with ICC version 4.2 profiles"

PDF/A-1 requires us to use ICC v2 profiles due to the level of PDF mandated
by the spec. In addition, we should not use V4 profiles when producing
PDF less than 1.5.

Michael added considerable code to allow us to get a V2 profile, given a
V4 profile, and this commit makes the changes required for pdfwrite. Its more
extensive than appears necessary because we need access to the current
imager state in order to generate the V2 profile, so a large number
of routines have been altered to pass along the imager state (or NULL in
some cases, where we can only be dealing with device spaces anyway).

We also change the default version of PDF we produce to 1.5 so that we can
emit V4 profiles and alter the 'prepress' predfined settings similarly.

This causes changes in a Genoa CET file, but its just different, not wrong.

gs/Resource/Init/gs_pdfwr.ps
gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.c
gs/devices/vector/gdevpdfc.c
gs/devices/vector/gdevpdfc.h
gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfg.h
gs/devices/vector/gdevpdfi.c
gs/devices/vector/gdevpdfk.c
gs/devices/vector/gdevpdft.c
gs/devices/vector/gdevpdfv.c


2014-07-01 09:41:38 +0100
Ken Sharp <ken.sharp@artifex.com>
c4dfed923d2513e4b79f8c765b5682e628b2fa60

pdfwrite - colour conversion

When converting a Separation alternate space we create a new space which
uses the ink name pf the Separation. We were putting the name into the
space without copying it, which can lead to it being freed while the original
space is still pointing to it.

Follow on from commit e492e1671b7b1041ba123a22c1df3b920cf753af which
addressed DeviceN spaces.

No differences expected.

gs/devices/vector/gdevpdfg.c


2014-06-30 10:14:08 +0100
Ken Sharp <ken.sharp@artifex.com>
c88ded04ea9977d994b243720b8fa32bc7fa56e7

Type 42 font - correctly initialise Max Composite points and Contours

The previous commit which initiaslised these (by me) was incorrect, the
values are 2 byte shorts, not 4 byte ints.

No differences expected.

gs/base/gstype42.c


2014-06-30 09:40:26 +0100
Ken Sharp <ken.sharp@artifex.com>
e492e1671b7b1041ba123a22c1df3b920cf753af

pdfwrite - colour conversion of DeviceN alternate spaces

Bug #695306 "Converting a PDF to RGB colorspace causes missing drawing parts"

There are two problems addressed in this commit.

Firstly the code wasn't catering properly for the possibility of an /Indexed
DeviceN space. We did dereference the Indeexed space, but not until after
we had tried to use the original space as a DeviceN, with unfortunate
potential results. We move the dereference to the top of the function
convert_DeviceN_alternate so that we properly use the DeviceN space.

Secondly when creating the new colour space (ie with a different alternate
space), we add the names of the inks from the original DeviceN space.
However, we were using add_no_copy which meant when the new array was
garbage collected we freed the names, but left them being pointed at by
the original array, leading to pointers to garbage memory.

No differences expected as the colour conversion is not tested by the cluster

gs/devices/vector/gdevpdfg.c


2014-06-27 04:58:24 -0700
Ray Johnston <ray.johnston@artifex.com>
9f7902c6a9a5a2315901b3d5ef32e98feefe7e86

Fix compiler warnings and dependencies.

gs/base/gspaint.c
gs/base/gxclthrd.c
gs/base/lib.mak


2014-06-26 18:12:52 -0700
Michael Vrhel <michael.vrhel@artifex.com>
abcf61e770b8b4687c571f321c79e6a0bb0a7424

Fix compiler warnings in ICC generation code.

gs/base/gsicc_create.c


2014-06-26 16:26:44 -0600
Henry Stiles <henry.stiles@artifex.com>
417ffa428a427abd327ab7be48759d536b0689a6

PCL no longer needs to maintain the hardware clipping state with the
change to have the device maintain the printable region (HWMargins).
See last commit.

pcl/pcpage.c
pcl/pcxfmst.h
pcl/pgdraw.c


2014-06-26 18:22:22 +0100
Chris Liddell <chris.liddell@artifex.com>
5470aa39ebcfff65fb00e163f781c5769f4f9c18

Bug 695334: fix seg fault with CIDFont substitution.

When deciding whether to share the subst_CID_on_WMode table between CIDFont
objects, make sure the two fonts are allocated in the same VM mode. If they
differ, do not share the table.

No cluster differences.

gs/psi/zfcid1.c


2014-06-26 18:21:07 +0100
Chris Liddell <chris.liddell@artifex.com>
c73b4d533dc236427d57b3e8f9725f12d8d0aadd

Add the SubstCID resources to the romfs.

No cluster differences

gs/psi/psromfs.mak


2014-06-24 05:46:32 -0700
Ray Johnston <ray.johnston@artifex.com>
02c486ce654faf99eac1dcd262651af5d32bae05

Add pageneutralcolor as a printer device parameter to allow query.

fillpage (erasepage from PS) will re-enable monitoring so we needn't
ouptut the page in order to restart monitoring.

This allows PostScript or clients to use get_params or get_param to
read the pageneutralcolor state. Presumably this would be used prior
to showpage. Coupled with the EndPage proc, PS can examine this even
without emitting the pages.

Note that this is only accurate when in clist mode, so -dMaxBitmap=0
and -dGrayDetection=true should both be used.

gs/base/gdevprn.c
gs/base/gspaint.c
gs/doc/Language.htm


2014-06-26 07:59:12 -0600
Henry Stiles <henry.stiles@artifex.com>
f3f29cf2f2ad9ab30c0a10f0634ec4d2d06d906c

Default PCL to full bleed, setting the printable region margins to 0.

Actually this change was partially implemented previously, but there
were still lingering parts of the code that used the 1/6" border to
affect the output. Older HP printers default to a 1/6" inch printable
region. This can be implemented by changing the default HWMargins in
the device or by setting them with the command line option -H, see the
PCL documentation for details.

pcl/pcpage.c


2014-06-25 20:23:17 -0700
Michael Vrhel <michael.vrhel@artifex.com>
b13d19749b58b2b0263013ad9a516c36e56cdb1c

Fix wrong pointer type passing to gsicc_create_compute_cam

No differences expected since the pointer type mix up happened to
be both float types

gs/base/gsicc_create.c


2014-06-25 14:59:54 -0700
Michael Vrhel <michael.vrhel@artifex.com>
d6be178195f97d7fa1cd2ae010e5d9e89f911e1a

Apply cat02 chromatic adaptation to primaries when creating ICC profile from CalRGB

While I had pickled the CAM into the transform created using the lutAtoB type, I
failed to apply the transform for the matrix based solution that is used for the
profile when created from CalRGB. I did have a comment in the code that this needed
to be done.

Several progressions occur.

gs/base/gsicc_create.c


2014-06-25 08:54:43 -0600
Henry Stiles <henry.stiles@artifex.com>
759230353994354ae7417cdab1bbb09924dea70f

Add an option to set hardware margins.

There was no way to specify Ghostscript .HWMargins on the command line
because the PCL option parser cannot parse most composite objects. So
we add a '-H' option to be followed by 4 numbers: left, bottom, right
and top margin.

doc/ghostpdl.pdf
doc/ghostpdl.tex
doc/ghostpdl.txt
pl/plmain.c


2014-06-24 12:33:48 +0100
Chris Liddell <chris.liddell@artifex.com>
f293a2fd1bfed25a69d64472967417d7d40d08ff

Fix memory leak in libjpeg custom memory management

Noticed working on another issue: the cleanup function was missing for the
custom libjpeg memory management code.

No cluster differences.

gs/base/sjpeg.h
gs/base/sjpegc.c


2014-06-19 17:23:26 +0100
Chris Liddell <chris.liddell@artifex.com>
0fc3bea788f6b65062432ff4bc6eace3cc713e63

Various ICC profile related memory leak fixes

Raised by cust 532.

Add several "finalize" methods so ICC profiles (not in garbage collected memory)
get freed or ref count decremented appropriately when the referencing object
*is* garbage collected.

Also, there were some mismatched ref count increments.

No cluster differences.

gs/base/gdevp14.c
gs/base/gscms.h
gs/base/gsicc_cache.c
gs/base/gsicc_lcms.c
gs/base/gsicc_lcms2.c
gs/base/gsicc_manage.c
gs/base/gsicc_nocm.c
gs/base/gsstate.c
gs/base/gstrans.c
gs/base/gxclist.c
gs/base/gxclist.h


2014-06-24 13:26:58 +0100
Ken Sharp <ken.sharp@artifex.com>
d936f19a3342a8da88b32a1559087b3a38c66832

pdfwrite - more changes to better handle sRGB ColorConversionStrategy

Following on from commit d704ab3d30b6119c8169d8827226f7325e5ee87f an
additional 3 cases where I believe we need to handle sRGB as per RGB.

These changes are committed separately as they were found by code inspection
and I don't have a test case for them.

No differences expected

gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfi.c


2014-06-24 12:51:16 +0100
Ken Sharp <ken.sharp@artifex.com>
d704ab3d30b6119c8169d8827226f7325e5ee87f

pdfwrite colour conversion - handle alternate conversion to sRGB from DeviceN

Bug #695316 "A DeviceN image in pdf can't be converted to RGB image, it is converted to many paths instead"
Bug #695306 "Converting a PDF to RGB colorspace causes missing drawing parts"

The code for converting a DeviceN alternate space and tint transform wasn't
catering for a ColorConversionStrategy of /sRGB. This commit ads the
ccs_sRGB case, and converts it to RGB as per the documentation, using the
selected RGB profile.

Bug 695316 now converts the image to an image, though it produces an error
on exit relating to ICC profiles.

Bug 695306, for me, caused a seg fault, which this commit corrects. I do not
see any missing content with either sRGB or RGB conversion. I do see the
same error as for Bug #695316 and I'll continue working on that problem
under that bug number

No differences expected, the c;luster doesn't test colour conversion

gs/devices/vector/gdevpdfg.c


2014-06-21 09:22:10 +0100
Ken Sharp <ken.sharp@artifex.com>
699e5a8478c2acbe34add1a9b2bd809779001e3f

pdfwrite - preserve enumerator text for composite data

Bug #695322 "Distilling PS to PDF using GS causes strange characters for spaces when using a particular sequence in the PS"

The problem occurs because when processing text in a composite font pdfwrite
overwrites the string data while working on it. In general this is not actually
a problem, as the string data argument to the show family of operators is
normally not reused.

However, in this case the customer's PostScript inserts space glyphs by calling
a bound procedure, instead of simply calling show. The first execution works
properly, but corrupts the string, the second execution uses the corrupted
string as the data, and is unable to find a glyph in the font to match the
corrupted data, which results in the /.notdef being used instead.

The particular routine in question (scan_cmap_text) is one of the most
convoluted and bloated routines in pdfwrite, and after some inspection it
was obviously going to be very difficult to avoid overwriting the string
data, it would run considerable risk of breaking the code in subtle ways,
and would in any event mean copying the string data around, possibly mutliple
times.

Accordingly I've chose to make a new copy of the string data in
process_cmap_text, which is the only parent of scan_cmap_text, and save/restore
the string data round the call. This prevents the bound string being
corrupted and fixes the problem.

This also exhibits a progression in Bug691680.ps and I've noted in that
thread that the remaining problem is fixed.

gs/devices/vector/gdevpdtc.c


2014-06-20 17:53:49 -0700
Michael Vrhel <michael.vrhel@artifex.com>
2322d38f28a21cfaad42e66398bcc34077818beb

Addition of code in gsicc_create.c to create V2 ICC profiles from V4 ICC profiles

This is needed to support a version of PDF-X that requires V2 ICC profiles.

gs/base/gscms.h
gs/base/gsicc_cms.h
gs/base/gsicc_create.c
gs/base/gsicc_create.h
gs/base/gsicc_lcms2.c
gs/base/gsicc_manage.c
gs/base/gsicc_manage.h


2014-06-19 13:43:37 +0100
Ken Sharp <ken.sharp@artifex.com>
d6a29d5618f95cbbd299a5d5d02ec820ae8d7ced

Check for trivially clipped out images before checking trivially non-clipped

Bug #695320 "Difference in bbox result from 9.06 onwards"

commit a13600f1c241c3e36dbe4973e9d78a8934b16004 introduced checks to see
if we actually needed a clip device before going ahead and installing it.
However, the order of checks was slightly incorrect. The code clamps the
rectangle to be tested to the outer box of the clip path, then checked to
see if the rectangle was completely included in the inner box.

If the object was completely clipped out then the rectangle would be clamped
to the outer box of the clip. If the outer and inner boxes were the same
(rectangular clip) then the test could decide that the totally clipped out
rectangle was in fact completely enclosed in the inner box.

We fix this here by checking to see if the image is clipped out (by testing
to see if the top/bottom or left/right edges are co-incident) before we
check for trivial inclusion.

For totally clipped out objects we then abort the object which, like the
original fix prevents us installing a clip device and also prevents us
going through the trapezoid degeneration., Potentially a small performance
win, as well as getting the bbox correct.

No differences expected

gs/base/gxclip.c


2014-06-16 07:06:09 -0700
Ray Johnston <ray.johnston@artifex.com>
8269dd2b5f6d5aea4a5c1a6374dd7f6e6b7202f5

Fix parameters to tile_by_steps that improves performance on J10

Found while investigating performance for cust 532, one of the calls
to tile_by_steps in gx_trans_pattern_fill_rect passed the rect upper
right rather than the width and height. This improved the time spent
in tile_by_steps from 8 sec to 4 sec on the JEITA J10 page.

gs/base/gxp1fill.c


2014-05-30 07:40:56 -0700
Ray Johnston <ray.johnston@artifex.com>
9b6c504d49663d737dffbd42aace7891c3fb15dd

Fix Knockout true, Isolated false blending with pdf transparency. fts_25_2524

This was reported by customer 532. Knockout blending was seriously broken in
not using the background correctly when not isolated, and knockout blending
in art_pdf_composite_knockout_simple_8 did not handle blend modes other than
normal. Also pdf14_compose_group was basing decisions on tos_isolated when
nos_isolated was needed, and a special check for tos_knockout when the nos
is the page level was not needed.

gs/base/gdevp14.c
gs/base/gxblend.c
gs/base/gxblend.h
gs/base/gxblend1.c


2014-06-12 15:44:47 +0100
Ken Sharp <ken.sharp@artifex.com>
77f9aa46adf05063752c9afdcd6cff92b332cb66

txtwrite - fix a couple of compiler warnings

gs/devices/vector/gdevpdfm.c


2014-05-27 14:50:25 +0100
Chris Liddell <chris.liddell@artifex.com>
b8a9352dac5e388de3c596371143040722fa2285

Bug 695258: optimize AGL name mapping.

Add a "reverse AGL" dictionary which allows us to create the extra name mappings
with one pass over the CharStrings dictionary, rather than two passes over the
entire AGL dictionary.

No cluster differences.

gs/Resource/Init/gs_agl.ps
gs/Resource/Init/gs_ttf.ps
gs/Resource/Init/gs_type1.ps
gs/psi/int.mak


2014-06-12 08:46:53 +0100
Ken Sharp <ken.sharp@artifex.com>
1413e11d39ea015f1568a7ed7f00f99e16534259

pdfwrite - more improvements on GoToR and link processing

Still Bug #695269

This time we take account of possible FirstPage and LastPage settings and
*don't* apply them to GoToR actions.

No differences expected.

gs/devices/vector/gdevpdfm.c


2014-06-11 13:38:56 -0600
Henry Stiles <henry.stiles@artifex.com>
759c5f4aca61fe8914eaec8d86e0a64850034430

Deterministic seeding for random number generator so the file can be
regression tested.

gs/examples/snowflak.ps


2014-06-10 17:39:23 +0100
Chris Liddell <chris.liddell@artifex.com>
e4a278eccdfd1f7b45daee3b77f9776fcd11e686

Up the required version of autoconf to 2.60

Due to our (long term!) use of the AC_PROG_SED macro, we need autoconf
2.60 (the macro was actually added to the 2.59b release, but 2.60 is close
enough).

No cluster differences

gs/configure.ac


2014-06-10 15:28:28 +0100
Ken Sharp <ken.sharp@artifex.com>
cb32f7a923fbe661d5b959e8c7a24c147de7f782

pdfwrite - don't include 'GoToR' references in check of destinations

Bug #695269 " PDF file containing outline or link annotation with GoToR action processing ended with a message "ERROR: A pdfmark destination page XXX points beyond the last page YYYY.""

The problem is that the function which gets a numeric page number, either by
finding the /Next or /Prev keys or by finding an absolute page number, was
also updating the 'max_referred_page' variable. This is checked when closing
the PDF file and an error message emitted if it exceeds the number of pages
in the PDF file.

Of course, for a GoToR action, its valid for the destination (which is in a
different file after all) to be greater than the number of pages in the current
file.

This commit removes the update for the max_referred_page variable from
pdfmark_page_number, and places it in the calling function. This makes more
sense to me, its not reasonable that s utility function should have an
unexpected side effect like that, and it makes more sense for the function
which handles the destination to decide whether it should update this variable.

No differences expected, we don't test this on the cluster.

gs/devices/vector/gdevpdfm.c


2014-06-10 13:31:07 +0100
Ken Sharp <ken.sharp@artifex.com>
baecaed381a6799e71c451933c3a1707f5653782

pdfwrite - improved handling of images with > 8 BPC

Bug #691713 "/rangecheck in fts_18_1805.pdf on pdfwrite device"
Bug #694731 "pdfwrite doesn't handle 16 bpc images"

To date images with more than 8 bits per component, using any transparency
features, resulted in a rangecheck error as the code was incapable of
handling 12 or 16 bpc.

The new image code (improved for colour management) now allows us to apply
a simple 16->8 (discarding the lower 8 bits) subsampler and this results
in all the files which caused problems working correctly.

In addition, many files which previously 'fell back' to the default implementation
(where each image sample is transformed into a filled rectangle) now preserve
the image as an image. This makes the resulting PDF or PostScript file
considerably smaller and quicker to process.

Note that this *only* works if the ColorConversionStrategy is 'LeaveColorUnchanged'
This is because the existing image colour space conversion code cannot cope
with anything other than 8-bit input.

A number of test files show differences.

The majority are PDF files which previously had content missing but now
render correctly.

A number are due to the fact that the image is no longer degenerated into
thousands of rectangles which means that it is recompressed, if the input
was JPEG and the compression is also JPEG this results in visible artefacts.

Some files show differences due to the fact that the naive downsampling
gives slightly different results from the accurate colour conversion. These
show slight improvements in about as many cases as they show slight degradation

gs/devices/vector/gdevpdfi.c


2014-06-09 08:23:09 +0100
Ken Sharp <ken.sharp@artifex.com>
5cc8aa8af871ab95ddebc2fc15baaf261bd8bb89

PDF interpreter - remove some commented out code

Commit 33fb85045c2590ac58a723ea2abcfbde505e53d1 included some code which was
commented out but should have been removed.

gs/Resource/Init/pdf_draw.ps


2014-06-07 11:46:00 +0100
Ken Sharp <ken.sharp@artifex.com>
33fb85045c2590ac58a723ea2abcfbde505e53d1

PDF interpreter - improve synthesis of text form fields with no /AP

Bug #694738 " Text synthesis of missing appearances in the PDF interpreter does not handle UTF16BE"

Previously we didn't strip the 0xFE 0xFF byte order mark from UTF16-BE strings
this commit removes them. We also remove the requirement for a /DA (Default
Appearance) to be present in a Text field before we synthesise a replacement
for a missing AP, taking int account any UTF16 strings.

This does not 'fix' bug #694738 but this is because the /DA uses a font which
is not correctly encoded to draw UTF16 text. The font uses an /Identity-H
CMap which is unlikely to work with UTF16. Replacing it with our own fallback
CID font and using a /Identity-UTF16-H CMap draws the text correctly, which
shows that the problem is the font. NB Acrobat (as usual) ignores appearances
and creates its own representation, so the Acrobat display is not an indication
of a bug in GS.

A few files in the test suite show differences because we no longer attempt
to print the BOM.

gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_ops.ps


2014-06-06 17:06:32 +0100
Chris Liddell <chris.liddell@artifex.com>
b5e0be23db6988057a0007cec24b592180ec25ff

Handle the Identity-UTF16-H CMap "properly"

For "normal" identity CMaps we skip a step in decoding the CID to the GID, but
this should not be done for the Identity-UTF16-H CMap.

Relates to (but does not resolve) Bug 694738.

No cluster differences.

gs/psi/zfapi.c


2014-06-05 16:37:36 +0100
Chris Liddell <chris.liddell@artifex.com>
235b2db4ab9cfd5b82bb45fb941bec04d41a00c8

Tweaks for cups 1.7.3 to build on Windows and OS X

No cluster differences

gs/cups/libs/cups/cups.h
gs/cups/libs/cups/debug.c
gs/cups/libs/cups/globals.c
gs/cups/libs/cups/ipp.c
gs/cups/libs/cups/language.c
gs/cups/libs/cups/usersys.c
gs/psi/msvc.mak


2014-06-05 15:36:03 +0100
Chris Liddell <chris.liddell@artifex.com>
e9b8fbfed2c406ef7612f8c7b7e846f71a2d93d1

Update libcups to 1.7.3

gs/base/lcups.mak
gs/base/lcupsi.mak
gs/cups/libs/configlinux.h
gs/cups/libs/configwin.h
gs/cups/libs/cups/Dependencies
gs/cups/libs/cups/Makefile
gs/cups/libs/cups/adminutil.c
gs/cups/libs/cups/adminutil.h
gs/cups/libs/cups/api-array.header
gs/cups/libs/cups/api-array.shtml
gs/cups/libs/cups/api-cups.header
gs/cups/libs/cups/api-cups.shtml
gs/cups/libs/cups/api-filedir.header
gs/cups/libs/cups/api-filedir.shtml
gs/cups/libs/cups/api-filter.header
gs/cups/libs/cups/api-filter.shtml
gs/cups/libs/cups/api-httpipp.header
gs/cups/libs/cups/api-httpipp.shtml
gs/cups/libs/cups/api-overview.header
gs/cups/libs/cups/api-overview.shtml
gs/cups/libs/cups/api-ppd.header
gs/cups/libs/cups/api-ppd.shtml
gs/cups/libs/cups/array-private.h
gs/cups/libs/cups/array.c
gs/cups/libs/cups/array.h
gs/cups/libs/cups/attr.c
gs/cups/libs/cups/auth.c
gs/cups/libs/cups/backchannel.c
gs/cups/libs/cups/backend.c
gs/cups/libs/cups/backend.h
gs/cups/libs/cups/conflicts.c
gs/cups/libs/cups/cups-private.h
gs/cups/libs/cups/cups.h
gs/cups/libs/cups/custom.c
gs/cups/libs/cups/debug-private.h
gs/cups/libs/cups/debug.c
gs/cups/libs/cups/debug.h
gs/cups/libs/cups/dest-job.c
gs/cups/libs/cups/dest-localization.c
gs/cups/libs/cups/dest-options.c
gs/cups/libs/cups/dest.c
gs/cups/libs/cups/dir.c
gs/cups/libs/cups/dir.h
gs/cups/libs/cups/emit.c
gs/cups/libs/cups/encode.c
gs/cups/libs/cups/file-private.h
gs/cups/libs/cups/file.c
gs/cups/libs/cups/file.h
gs/cups/libs/cups/getdevices.c
gs/cups/libs/cups/getifaddrs.c
gs/cups/libs/cups/getputfile.c
gs/cups/libs/cups/globals.c
gs/cups/libs/cups/globals.h
gs/cups/libs/cups/http-addr.c
gs/cups/libs/cups/http-addrlist.c
gs/cups/libs/cups/http-private.h
gs/cups/libs/cups/http-support.c
gs/cups/libs/cups/http.c
gs/cups/libs/cups/http.h
gs/cups/libs/cups/i18n.h
gs/cups/libs/cups/ipp-private.h
gs/cups/libs/cups/ipp-support.c
gs/cups/libs/cups/ipp.c
gs/cups/libs/cups/ipp.h
gs/cups/libs/cups/langprintf.c
gs/cups/libs/cups/language-private.h
gs/cups/libs/cups/language.c
gs/cups/libs/cups/language.h
gs/cups/libs/cups/libcups2.def
gs/cups/libs/cups/libcups2.rc
gs/cups/libs/cups/libcups_s.exp
gs/cups/libs/cups/localize.c
gs/cups/libs/cups/mark.c
gs/cups/libs/cups/md5-apple.h
gs/cups/libs/cups/md5-private.h
gs/cups/libs/cups/md5.c
gs/cups/libs/cups/md5.h
gs/cups/libs/cups/md5passwd.c
gs/cups/libs/cups/notify.c
gs/cups/libs/cups/options.c
gs/cups/libs/cups/page.c
gs/cups/libs/cups/ppd-cache.c
gs/cups/libs/cups/ppd-private.h
gs/cups/libs/cups/ppd.c
gs/cups/libs/cups/ppd.h
gs/cups/libs/cups/pwg-file.c
gs/cups/libs/cups/pwg-media.c
gs/cups/libs/cups/pwg-ppd.c
gs/cups/libs/cups/pwg-private.h
gs/cups/libs/cups/pwg.h
gs/cups/libs/cups/raster-private.h
gs/cups/libs/cups/raster.h
gs/cups/libs/cups/request.c
gs/cups/libs/cups/sidechannel.c
gs/cups/libs/cups/sidechannel.h
gs/cups/libs/cups/snmp-private.h
gs/cups/libs/cups/snmp.c
gs/cups/libs/cups/snprintf.c
gs/cups/libs/cups/sspi-private.h
gs/cups/libs/cups/sspi.c
gs/cups/libs/cups/string-private.h
gs/cups/libs/cups/string.c
gs/cups/libs/cups/string.h
gs/cups/libs/cups/tempfile.c
gs/cups/libs/cups/test.ppd
gs/cups/libs/cups/test2.ppd
gs/cups/libs/cups/testadmin.c
gs/cups/libs/cups/testarray.c
gs/cups/libs/cups/testconflicts.c
gs/cups/libs/cups/testcups.c
gs/cups/libs/cups/testfile.c
gs/cups/libs/cups/testhttp.c
gs/cups/libs/cups/testi18n.c
gs/cups/libs/cups/testipp.c
gs/cups/libs/cups/testlang.c
gs/cups/libs/cups/testoptions.c
gs/cups/libs/cups/testppd.c
gs/cups/libs/cups/testpwg.c
gs/cups/libs/cups/testsnmp.c
gs/cups/libs/cups/thread-private.h
gs/cups/libs/cups/thread.c
gs/cups/libs/cups/transcode.c
gs/cups/libs/cups/transcode.h
gs/cups/libs/cups/usersys.c
gs/cups/libs/cups/utf8demo.txt
gs/cups/libs/cups/util.c
gs/cups/libs/cups/versioning.h
gs/cups/libs/filter/Dependencies
gs/cups/libs/filter/Makefile
gs/cups/libs/filter/api-raster.header
gs/cups/libs/filter/api-raster.shtml
gs/cups/libs/filter/commandtops.c
gs/cups/libs/filter/common.c
gs/cups/libs/filter/common.h
gs/cups/libs/filter/error.c
gs/cups/libs/filter/gziptoany.c
gs/cups/libs/filter/image-bmp.c
gs/cups/libs/filter/image-colorspace.c
gs/cups/libs/filter/image-gif.c
gs/cups/libs/filter/image-jpeg.c
gs/cups/libs/filter/image-photocd.c
gs/cups/libs/filter/image-pix.c
gs/cups/libs/filter/image-png.c
gs/cups/libs/filter/image-pnm.c
gs/cups/libs/filter/image-private.h
gs/cups/libs/filter/image-sgi.c
gs/cups/libs/filter/image-sgi.h
gs/cups/libs/filter/image-sgilib.c
gs/cups/libs/filter/image-sun.c
gs/cups/libs/filter/image-tiff.c
gs/cups/libs/filter/image-zoom.c
gs/cups/libs/filter/image.c
gs/cups/libs/filter/image.h
gs/cups/libs/filter/interpret.c
gs/cups/libs/filter/libcupsimage2.def
gs/cups/libs/filter/libcupsimage_s.exp
gs/cups/libs/filter/postscript-driver.header
gs/cups/libs/filter/postscript-driver.shtml
gs/cups/libs/filter/ppd-compiler.header
gs/cups/libs/filter/ppd-compiler.shtml
gs/cups/libs/filter/pstops.c
gs/cups/libs/filter/raster-driver.header
gs/cups/libs/filter/raster-driver.shtml
gs/cups/libs/filter/raster.c
gs/cups/libs/filter/rasterbench.c
gs/cups/libs/filter/rastertoepson.c
gs/cups/libs/filter/rastertohp.c
gs/cups/libs/filter/rastertolabel.c
gs/cups/libs/filter/rastertopwg.c
gs/cups/libs/filter/spec-ppd.header
gs/cups/libs/filter/spec-ppd.shtml
gs/cups/libs/filter/testraster.c


2014-06-05 17:06:47 +0100
Chris Liddell <chris.liddell@artifex.com>
e2da8a39efbfbd96cb05964f3d90e33a507256ef

Include pwgraster.dev with suitable cups revisions

The pwgraster support arrived in cups 1.5, so only build in pwgraster device
when linking with cups 1.5 and later.

No cluster differences

gs/configure.ac


2014-06-05 13:36:58 +0100
Ken Sharp <ken.sharp@artifex.com>
cd1ec1cfbc66568eeb6c2b4413a477568caeadf4

PDF interpreter - ignore broken appearance dicts

Bug #692181 " %%EOF marker"

The bug title is very misleading, there were two problems;
1) Ghostscript didn't synthesise appearances fro FreeText annotations
2) The appearance dictionaries were invalid.

Previous work added support for FreeText annotations, this commit adds some
slight improvements to that, and in addition it does minimal validation on
the AP (appearance) dictionary. If its invalid we don't bother to use it
but synthesise an appearance anyway.

gs/Resource/Init/pdf_draw.ps


2014-06-03 11:27:09 -0700
Chris Liddell <chris.liddell@artifex.com>
2deb460ef02e2802546e09979243764ede2d4173

Bug 695274: validate CIDFont substitute records.

In cidfmap records which substitute TTF fonts check whether we can access
the TTF file, if we cannot, remove the record from the map.

No cluster differences.

gs/Resource/Init/gs_cidfm.ps


2014-06-03 11:18:13 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
cc5257faa69ed02333ac63bd1f3c5e360931407a

Changed copyright date to 2014.

gs/base/gscdef.c


2014-05-31 14:02:28 +0100
Chris Liddell <chris.liddell@artifex.com>
4994e176c4b8ff43ccc91dba807879d02d070d88

Bug 695272: init PS arrays at alloc time

Write null objects to PS arrays when they are allocated - prevents invalid
reads/writes during garbage collection if we hit an error between allocation
and the contents being written.

No cluster differences.

gs/psi/ialloc.c


2014-05-31 13:24:43 +0100
Chris Liddell <chris.liddell@artifex.com>
053fa67fa93fa7be26885422f3881b72ccc682a0

Bug 695275: Add bounds check when retrieving TTF name

When deciding whether a TTF font name is multi or single byte string,
validate the Platform ID before trying to use it. If it is invalid
attempt to continue as a single byte string.

No cluster differences.

gs/Resource/Init/gs_ttf.ps


2014-06-03 05:07:55 +0100
Ken Sharp <ken.sharp@artifex.com>
87b6bca6b9878ea28e460baac62f0abe974c5748

txtwrite - fix BOM emission

Bug #695292 "txtwrite device extracts unicode text from file like bigendian"

The code was emitting the BOM in a way that meant it was always written as
a big-endian BOM when in fsct it should have been the native endian-ness.

No differences expected.

gs/devices/vector/gdevtxtw.c


2014-06-02 17:24:16 -0700
Chris Liddell <chris.liddell@artifex.com>
dae5b12f2e9e4716d6d60874efd7bfee410d69c7

Destroy gslite

CLUSTER_UNTESTED

doc/who_owns_what.txt
gs/base/gxccman.c
gs/base/gxfcache.h
tools/gslite/README
tools/gslite/gslite-api.rtf
tools/gslite/gslt.def
tools/gslite/gslt.h
tools/gslite/gslt.mak
tools/gslite/gslt_alloc.c
tools/gslite/gslt_alloc.h
tools/gslite/gslt_font.h
tools/gslite/gslt_font_api.c
tools/gslite/gslt_font_api.h
tools/gslite/gslt_font_api_test.c
tools/gslite/gslt_font_cache.c
tools/gslite/gslt_font_cff.c
tools/gslite/gslt_font_encoding.c
tools/gslite/gslt_font_glyph.c
tools/gslite/gslt_font_int.h
tools/gslite/gslt_font_test.c
tools/gslite/gslt_font_ttf.c
tools/gslite/gslt_image.c
tools/gslite/gslt_image.h
tools/gslite/gslt_image_jpeg.c
tools/gslite/gslt_image_png.c
tools/gslite/gslt_image_test.c
tools/gslite/gslt_image_threads_test.c
tools/gslite/gslt_image_tiff.c
tools/gslite/gslt_init.c
tools/gslite/gslt_lib_gcc.mak
tools/gslite/gslt_lib_msvc.mak
tools/gslite/gslt_stubs.c
tools/gslite/gslt_test.c
tools/gslite/tiger.jpg


2014-06-02 17:07:28 -0700
Chris Liddell <chris.liddell@artifex.com>
ddcebb6600c102f0d7d8a396f0dafa67845df48b

Remove "commercial only" comment from ETS docs

CLUSTER_UNTESTED

gs/toolbin/halftone/ETS/README.txt


2014-06-02 17:32:33 +0200
Till Kamppeter <till.kamppeter@gmail.com>
e054f1e08f8fdaa557f56cee5ff93f354db1f971

"cups" output device: Do byte-swapping for correct Endian not only for EncodeLUT but also for DecodeLUT

Robin Watts on bug bugs.ghostscript.com/show_bug.cgi?id=695264:

----------
Generally, I think it's considered good form that encode_color and
decode_color should be complementary operations :)

devcups uses EncodeLUT to implement encode_color, and DecodeLUT to
implement decode_color.

In the case of little endian 16bit, it packs a endian reversal into
EncodeLUT. It leaves DecodeLUT undiddled though.

Diddling DecodeLUT in the equivalent manner seems (superficially at
least) to solve the problem.
----------

This makes all 16-bit color spaces give correct colors on rasterview.

gs/cups/gdevcups.c


2014-05-29 15:33:12 +0100
Ken Sharp <ken.sharp@artifex.com>
95eea50e13987bd06d5634ec7f4dc381a76ee629

PDF interpreter - add support for GoTo and GoToR in Link annotations of PDF files

Bug #695268 "PDF file containing link annotation with GoToR action
broken by GS processing, action is not passed"

Patch supplied by Jacek Bator after the code for Outlines with GoTo and
GoToR annotations.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-05-29 08:32:30 +0100
Ken Sharp <ken.sharp@artifex.com>
272d83387ff590244e3fb8719e8eef2e928f514d

pdfwrite - fix GoTo processing for Outlines in PDF input files

Bug #695267 "Incorrect PDF output for outlines and link annotations with GoTo action"

commit 099657a962e716658f20658051c9692b439ecf2d incorrectly modified the
GoTo action, it turns out that GoTo and GoToR really do have to be handled
differently.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-05-28 20:43:35 +0100
Robin Watts <robin.watts@artifex.com>
73123c3caa6495e1b30d1ecd35602629d6a8c17e

Bug 695116: Rewrite JPEG header height when required.

This follows on from Kens previous commit and should fix the bug.

When a PDF includes a JPEG it states the height to use for that
JPEG. We now check the JPEG header to see if the height declared
there is 0 or is greater than the PDF specified height. If so,
we rewrite the header to contain the height specified in the PDF.

Short of performing radical surgery on libjpeg to make it honour
the DNL tag, this is the best we are going to be able to do.

gs/base/sdctd.c


2014-05-28 18:52:26 +0100
Ken Sharp <ken.sharp@artifex.com>
ddaea8157085f4efb227e78326dd739d59493b97

PDF interpreter - pass image height as a /DecodeParm to all filters

Bug #695116 "**** Warning: File has insufficient data for an image"

This is not a solution for this bug, merely framework to allow it to be fixed.

The PDF file contains a DCT encoded stream for an image, where the header
declares a height of '-1' and then later uses a DNL marker to set the actual
number of rows of data in the image. This does not work with libjpeg (in
fact it doesn't work with an number of JPEG consumers).

However, because this is an image in a PDF file, we do have the image dimensiosn
from the image dictionary, so we can use that instead, if only we had a way
to pass the information into the stream decode filter.

This commit modifies the dictionary we provide to the stream code in the PDF
interpreter, we now insist that all the Filters in an image shall have a
DecodeParms dictionary, if they don;t already have one we create them as
required. In that dictionary we add a /Height key and put the Height retrieved
from the image dictionary in it.

All the decode operators handle being passed a dictionary with parameters,
so all that is then necessary is to have the DCT decode filter check the
parameter dictionary and store the Height from it in a new entry in the DCT
stream state.

The parameter is now available for use by the DCT decode filter, and a future
commit will use it to fix the actual problem.

No differences expected.

gs/Resource/Init/pdf_draw.ps
gs/base/sdcparam.c
gs/base/sdct.h


2014-05-28 14:48:27 +0200
Till Kamppeter <till.kamppeter@gmail.com>
625b7570141287bf5ca7b61fc733f81b109b45d7

"cups" output device: Fixed obvious copy-and-paste error in color conversion.

gs/cups/gdevcups.c


2014-05-28 11:46:07 +0200
Till Kamppeter <till.kamppeter@gmail.com>
d5065760d06ba71646d08240b87a8de08104c4c5

Fixed PWG Raster support in gdevcups.c to build with all CUPS library versions

We determine now whether we have PWG Raster support by the proper
macro of the CUPS library, not by whether the built-in or an external
lib is used. So we can also build with older CUPS library versions as
external library (bug 695243).

gs/cups/gdevcups.c


2014-05-28 08:33:15 +0100
Ken Sharp <ken.sharp@artifex.com>
230e512962ab5d05f137fc6b3665f5dcae0aa4e9

pdfwrite - test a return code to silence a compiler warning

gs/devices/vector/gdevpdte.c


2014-05-27 14:09:50 +0100
Ken Sharp <ken.sharp@artifex.com>
64dd281abf84ba7383aa85c99599b5aebea3998a

pdfwrite - improved handling of 'glyphshow' and similar operations

Bug #695168 "Problem converting xps to pdf"
Bug #695259 "both (incorrect) B/W and (correct) AA rendering of Libertine font in same PDF output"

Although these are different products, one being Ghostscript and the other
gxps, the underlying problem is similar. The PostScript makes extensive use
of the glyphshow operator, which ends up as a TEXT_FROM_SINGLE_GLYPH operation
in the graphics library, and the XPS interpreter always uses TEXT_FROM_GLYPHS.

In both cases the font is effectively unencoded when pdfwrite seee it. Since
we cannot construct and use an unencoded font in PDF we have no alternative
but to create an encoding for the font, and write the text using that encoding.

The way this is done we use the name table, which effectively means that the
character code we use is derived from the first byte of the glyph name. For
limited usage this works well, but more complex usage can result in problems.
For example the glyphs /o and /omicron are both encoded at index 103.

Previously this would cause us to fall back to rendering the font and embedding
as a type 3 font, or in the worst case an inline image. This is because when
encoding the text we would discover that an the font already had a glyph
encoded at the correct index, and would simply pass on, not realising it was
the incorrect glyph. Later we would check the actual glyph index against the glyph index
of the glyph encoded at that position, realise they were different and throw an error.

In this commit we check the glyph index early, at the point where we encode the text.
If the font already has a glyph encoded at the given character code, we check
the glyph index to see if it matches the current glyph. If it does all is well
but if it doesn't we break out and create a new font instance, with the new
glyph encoded in it.

Potentially this could result in a *lot* of font subsets being created, which
would increase the size of the output PDF file, but the quality improvement
is well worth it.

No differences expected.

gs/devices/vector/gdevpdte.c


2014-05-26 12:43:54 +0100
Ken Sharp <ken.sharp@artifex.com>
099657a962e716658f20658051c9692b439ecf2d

pdfwrite - fix GoTo and GoToR actions when passed through from PDF input

Bug #695232 "Broken PDF file when input file containes bookmarks with GoToR action"

When adding the GoToR functionality I copied the code from the GoTo action
sadly it seems the GoTo was already incorrect.

This commit should fix both, though I don't have a test for the GoTo action.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-05-24 09:04:53 +0100
Ken Sharp <ken.sharp@artifex.com>
5e868fffeaa21ebb0f7b30a4a9c29272d850b18a

pdfwrite - prototype a function to silence compiler warnings

gs/devices/vector/gdevpdfx.h


2014-05-23 13:59:30 +0100
Ken Sharp <ken.sharp@artifex.com>
cb5c738d04a028a88633f3f98d955f4218b05654

pdfwrite - better handling of input PDF files with broken fonts

Bug #695216 "Spurious errors and bad PDF written from input file comparefles/Bug693711.pdf"

The errors are not spurious, and are caused by the missing/damaged fonts in
the input file.

This commit chooses to ignore these errors, but I may rethink that if it causes
future problems, the fact that there are no errors when rendering does not
mean that there should be no errors when creating a PDF file.

Because the PDF interpreter ignores errors and continues regardles we were
then attempting to write an invalid font, which failed, resulting in an
(unused) entry in the xref with a duplicate offset of an earlier entry. This
commit further refines the broken font handling by detecting the fact that
the font was incorrectly written and elides it from the xref table.

This addresses both of the concerns raised in the bug report, though I would
point out that ignoring errors when the output device is pdfwrite is always
very likely to produce broken PDF files.

This does alter the font substitution for Bug693711.pdf on Linux.

gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdtb.c
gs/devices/vector/gdevpdtt.c


2014-05-22 18:33:34 +0100
Chris Liddell <chris.liddell@artifex.com>
93a23603b23160943b42c2f1e357fb75cc0a396b

Add an extra compiler flag for OpenJPEG 2.1.0

2.1.0 requires an extra compiler flag "USE_JPIP" that I had forgotten to add
to the Windows build

CLUSTER_UNTESTED

gs/psi/msvc.mak


2014-05-21 15:30:35 +0100
Chris Liddell <chris.liddell@artifex.com>
0d2bc37f7e4096fe31d6ebc6679d79935f52ba0c

Update OpenJPEG to 2.1.0

No cluster differences.

Revise configure script with extra flags for OPJ

Copy in new openjpeg (2.1.0) complete

Zap the openjpeg stuff we don't need

Add predefined openjpeg headers.

These are *nearly* empty of actual definitions, as we generate the settings
from the gs configure script.

Revised makefiles and configure script for new openjpeg

Tweak for updated openjpeg API

Import patches OpenJPEG from Sumatra's tree:

Reference:
https://code.google.com/p/sumatrapdf/source/browse/trunk/ext/_patches/openjpeg.patch?r=8887

gs/base/gs.mak
gs/base/openjpeg.mak
gs/base/sjpx_openjpeg.c
gs/configure.ac
gs/openjpeg/AUTHORS
gs/openjpeg/CHANGES
gs/openjpeg/LICENSE
gs/openjpeg/NEWS
gs/openjpeg/THANKS
gs/openjpeg/libopenjpeg/CMakeLists.txt
gs/openjpeg/libopenjpeg/Makefile.am
gs/openjpeg/libopenjpeg/Makefile.in
gs/openjpeg/libopenjpeg/bio.c
gs/openjpeg/libopenjpeg/bio.h
gs/openjpeg/libopenjpeg/cidx_manager.c
gs/openjpeg/libopenjpeg/cidx_manager.h
gs/openjpeg/libopenjpeg/cio.c
gs/openjpeg/libopenjpeg/cio.h
gs/openjpeg/libopenjpeg/dwt.c
gs/openjpeg/libopenjpeg/dwt.h
gs/openjpeg/libopenjpeg/event.c
gs/openjpeg/libopenjpeg/event.h
gs/openjpeg/libopenjpeg/fix.h
gs/openjpeg/libopenjpeg/function_list.c
gs/openjpeg/libopenjpeg/function_list.h
gs/openjpeg/libopenjpeg/image.c
gs/openjpeg/libopenjpeg/image.h
gs/openjpeg/libopenjpeg/indexbox_manager.h
gs/openjpeg/libopenjpeg/int.h
gs/openjpeg/libopenjpeg/invert.c
gs/openjpeg/libopenjpeg/invert.h
gs/openjpeg/libopenjpeg/j2k.c
gs/openjpeg/libopenjpeg/j2k.h
gs/openjpeg/libopenjpeg/j2k_lib.c
gs/openjpeg/libopenjpeg/j2k_lib.h
gs/openjpeg/libopenjpeg/jp2.c
gs/openjpeg/libopenjpeg/jp2.h
gs/openjpeg/libopenjpeg/jpt.c
gs/openjpeg/libopenjpeg/jpt.h
gs/openjpeg/libopenjpeg/mct.c
gs/openjpeg/libopenjpeg/mct.h
gs/openjpeg/libopenjpeg/mqc.c
gs/openjpeg/libopenjpeg/mqc.h
gs/openjpeg/libopenjpeg/openjpeg.c
gs/openjpeg/libopenjpeg/openjpeg.h
gs/openjpeg/libopenjpeg/opj_clock.c
gs/openjpeg/libopenjpeg/opj_clock.h
gs/openjpeg/libopenjpeg/opj_config.h
gs/openjpeg/libopenjpeg/opj_config_private.h
gs/openjpeg/libopenjpeg/opj_includes.h
gs/openjpeg/libopenjpeg/opj_intmath.h
gs/openjpeg/libopenjpeg/opj_inttypes.h
gs/openjpeg/libopenjpeg/opj_malloc.h
gs/openjpeg/libopenjpeg/opj_stdint.h
gs/openjpeg/libopenjpeg/phix_manager.c
gs/openjpeg/libopenjpeg/pi.c
gs/openjpeg/libopenjpeg/pi.h
gs/openjpeg/libopenjpeg/ppix_manager.c
gs/openjpeg/libopenjpeg/raw.c
gs/openjpeg/libopenjpeg/raw.h
gs/openjpeg/libopenjpeg/t1.c
gs/openjpeg/libopenjpeg/t1.h
gs/openjpeg/libopenjpeg/t1_generate_luts.c
gs/openjpeg/libopenjpeg/t1_luts.h
gs/openjpeg/libopenjpeg/t2.c
gs/openjpeg/libopenjpeg/t2.h
gs/openjpeg/libopenjpeg/tcd.c
gs/openjpeg/libopenjpeg/tcd.h
gs/openjpeg/libopenjpeg/tgt.c
gs/openjpeg/libopenjpeg/tgt.h
gs/openjpeg/libopenjpeg/thix_manager.c
gs/openjpeg/libopenjpeg/tpix_manager.c
gs/openjpeg/opj_config.h.in.user
gs/openjpeg/src/lib/openjp2/CMakeLists.txt
gs/openjpeg/src/lib/openjp2/bio.c
gs/openjpeg/src/lib/openjp2/bio.h
gs/openjpeg/src/lib/openjp2/cidx_manager.c
gs/openjpeg/src/lib/openjp2/cidx_manager.h
gs/openjpeg/src/lib/openjp2/cio.c
gs/openjpeg/src/lib/openjp2/cio.h
gs/openjpeg/src/lib/openjp2/dwt.c
gs/openjpeg/src/lib/openjp2/dwt.h
gs/openjpeg/src/lib/openjp2/event.c
gs/openjpeg/src/lib/openjp2/event.h
gs/openjpeg/src/lib/openjp2/function_list.c
gs/openjpeg/src/lib/openjp2/function_list.h
gs/openjpeg/src/lib/openjp2/image.c
gs/openjpeg/src/lib/openjp2/image.h
gs/openjpeg/src/lib/openjp2/indexbox_manager.h
gs/openjpeg/src/lib/openjp2/invert.c
gs/openjpeg/src/lib/openjp2/invert.h
gs/openjpeg/src/lib/openjp2/j2k.c
gs/openjpeg/src/lib/openjp2/j2k.h
gs/openjpeg/src/lib/openjp2/jp2.c
gs/openjpeg/src/lib/openjp2/jp2.h
gs/openjpeg/src/lib/openjp2/libopenjp2.pc.cmake.in
gs/openjpeg/src/lib/openjp2/mct.c
gs/openjpeg/src/lib/openjp2/mct.h
gs/openjpeg/src/lib/openjp2/mqc.c
gs/openjpeg/src/lib/openjp2/mqc.h
gs/openjpeg/src/lib/openjp2/openjpeg.c
gs/openjpeg/src/lib/openjp2/openjpeg.h
gs/openjpeg/src/lib/openjp2/opj_clock.c
gs/openjpeg/src/lib/openjp2/opj_clock.h
gs/openjpeg/src/lib/openjp2/opj_codec.h
gs/openjpeg/src/lib/openjp2/opj_config.h
gs/openjpeg/src/lib/openjp2/opj_config.h.cmake.in
gs/openjpeg/src/lib/openjp2/opj_config_private.h
gs/openjpeg/src/lib/openjp2/opj_config_private.h.cmake.in
gs/openjpeg/src/lib/openjp2/opj_includes.h
gs/openjpeg/src/lib/openjp2/opj_intmath.h
gs/openjpeg/src/lib/openjp2/opj_inttypes.h
gs/openjpeg/src/lib/openjp2/opj_malloc.h
gs/openjpeg/src/lib/openjp2/opj_stdint.h
gs/openjpeg/src/lib/openjp2/phix_manager.c
gs/openjpeg/src/lib/openjp2/pi.c
gs/openjpeg/src/lib/openjp2/pi.h
gs/openjpeg/src/lib/openjp2/ppix_manager.c
gs/openjpeg/src/lib/openjp2/raw.c
gs/openjpeg/src/lib/openjp2/raw.h
gs/openjpeg/src/lib/openjp2/t1.c
gs/openjpeg/src/lib/openjp2/t1.h
gs/openjpeg/src/lib/openjp2/t1_generate_luts.c
gs/openjpeg/src/lib/openjp2/t1_luts.h
gs/openjpeg/src/lib/openjp2/t2.c
gs/openjpeg/src/lib/openjp2/t2.h
gs/openjpeg/src/lib/openjp2/tcd.c
gs/openjpeg/src/lib/openjp2/tcd.h
gs/openjpeg/src/lib/openjp2/tgt.c
gs/openjpeg/src/lib/openjp2/tgt.h
gs/openjpeg/src/lib/openjp2/thix_manager.c
gs/openjpeg/src/lib/openjp2/tpix_manager.c


2014-05-20 11:47:21 -0700
Ray Johnston <ray.johnston@artifex.com>
21565d4ad3c3eed360d3a56c372663d1ba876c0d

Fix for fts_09_0920 SMask in ExGState ignored for text.

When the SMask is set in the ExtGState rather than in a Group Form,
we need to push a transparency group before painting the text (after
the setfillstate) and pop it afterwards, similarly to what we do
for fills and strokes.

gs/Resource/Init/pdf_ops.ps


2014-05-21 15:30:35 +0100
Chris Liddell <chris.liddell@artifex.com>
f032367796457690caa484b1a50aa1f97b80322a

Ensure memory allocator is available for jpeg encoding

No cluster differences.

gs/devices/gdevjpeg.c


2014-05-21 13:15:09 +0100
Ken Sharp <ken.sharp@artifex.com>
cc26212b8b4a756d6da891c946b53c52641befd3

pdfwrite - add an idiom for certain patterns produced by the MS driver


Bug #695230 "Invalid pattern fill rendering"

The Windows PostScript driver produces some patterns (for background fills)
which vary the size of the pattern cell according to the device resolution.
This means that as the resolution goes up, more pattern cells are drawn,
resulting in a finer and finer pattern.

This resolution neatly defeats our high level pattern capture in pdfwrite.
It only works properly if the device is running at 72 dpi, and the example
runs at 600.

It seems the easiest way to deal with this is to create an idiom which will
replace the resolution-varying pattern with a fixed pattern (it isn't possible
to have a resolution-dependent pattern in PDF anyway) and this commit adds
such an idiom.

It also updates the idioms to use the new .spec_op operator to interrogate
device parameters rather than the slow getdeviceparams previously used.

No differences expected.

gs/Resource/IdiomSet/Pscript5Idiom


2014-05-19 15:53:05 +0100
Chris Liddell <chris.liddell@artifex.com>
1b06d7888faf61bef37fc17b10a1745d889f4c75

Remove jmorecfg.h from includes....

in jmemcust.c

No cluster differences.

gs/base/jmemcust.c


2014-05-09 12:22:08 +0100
Chris Liddell <chris.liddell@artifex.com>
cb50ac70a8e8874a265da59baca7e95790e79af1

Add an app independent custom memory manager for libjpeg

gs/base/jmemcust.c
gs/base/jmemcust.h
gs/base/jpeg.mak
gs/base/sjpeg.h
gs/base/sjpegc.c
gs/base/sjpegd.c
gs/base/sjpege.c


2014-05-16 21:01:33 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
0145175ab9d530a4ed2c79dc6290235b30e980cc

Temporarily disable code introduced in 6fefd767005a8e5e8da0cbb954d0d47fc45fc37b.

For more details see Bug 695243.

gs/cups/gdevcups.c


2014-05-15 19:54:04 +0200
Till Kamppeter <till.kamppeter@gmail.com>
6fefd767005a8e5e8da0cbb954d0d47fc45fc37b

CUPS Raster output device: Fix cupsRasterOpen() call to get correct PWG Raster output

The CUPS Raster output device generated incorrect PWG Raster output
because it called cupsRasterOpen() without the required
CUPS_RASTER_WRITE_PWG mode setting. Due to the output never being
tested with an IPP Everywhere printer but only with software which
also accepts CUPS Raster, the bug did not get discovered until testing
the output against the mime type recognition of CUPS where it failed.

Note that this patch only fixes the problem if a shared libcupsimage
library of the system is used, not with the library included with
Ghostscript. This is because the included library is too old to
contain PWG Raster output support. If the included CUPS libraries have
to be used, the CUPS Raster output device is built as before to assure
that Ghostscript builds and CUPS Raster can still get generated.

gs/Makefile.in
gs/cups/gdevcups.c
gs/devices/devs.mak


2014-05-15 08:51:43 +0100
Chris Liddell <chris.liddell@artifex.com>
4836ecb5c5a03eb7217937b8503b20068e9bf846

Bug 695227: fix crash in bbox device

Don't try to assign the "imaging_dev" entry in the text enumerator if the
enumerator initialisation doesn't complete.

Slightly modified version of the patch supplied by
Antti Husa <a.husa@hushmail.com>

No cluster differences.

gs/base/gdevbbox.c


2014-05-12 11:13:07 +0100
Chris Liddell <chris.liddell@artifex.com>
a7434eca8268e31fdfc4b47740a7e7695b189bc0

Words about static linking the executable.

Mention the need to explicitly link libraries when building a static gs exe.

CLUSTER_UNTESTED

gs/doc/Make.htm


2014-05-12 10:53:12 +0100
Chris Liddell <chris.liddell@artifex.com>
3c4cfba8a74fd3255231fb381b55998753174849

Pass SHARE_LCMS as a compiler flag.

As pointed out by Albert Astals Cid <aacid@kde.org> although the code had been
changed to use the system malloc/free calls when sharing LCMS2, the flag
(SHARE_LCMS==1) I had forgotten to add it to the compiler parameters.

I've opted to add SHARE_LCMS to the compiler flags for LCMS, and include them
when compiler our interface files - this seems less likely to throw up a
similar oversight in the future.

No regression differences.

gs/Makefile.in
gs/base/lib.mak


2014-05-09 07:32:54 -0700
Ray Johnston <ray.johnston@artifex.com>
7df04bbe3a7126dc702cb09369ba29fd142bfa62

Only include trace devices (tr_mono, tr_rgb, tr_cmyk) in DEBUG builds on MSVC

gs/psi/msvc.mak


2014-05-09 07:22:08 -0700
Ray Johnston <ray.johnston@artifex.com>
db885d6e72fce5140a56abc8d4f49b0a3658aad7

Add tracedev (tr_mono, tr_rgb, tr_cmyk) to default MSVC build.

gs/psi/msvc.mak


2014-05-09 00:41:44 +0100
Robin Watts <robin.watts@artifex.com>
cc278761f766f7dbbba051af13b1ea0fdc7cdb08

Further tweak to ETS; mention patents, and add image viewer

Mention the patents in the comments of the code.

Add the image viewer back, as for people without Photoshop it can
be hard to visualise the output.

gs/toolbin/halftone/ETS/ets.c
gs/toolbin/halftone/ETS/ipview.html


2014-05-08 13:19:09 -0700
Michael Vrhel <michael.vrhel@artifex.com>
c203e3342db1933e610433de6915fcb66a8e593f

Removed files that were no longer used (SSE and VEC files and Build files). Updated README.txt

gs/toolbin/halftone/ETS/COPYING.txt
gs/toolbin/halftone/ETS/Makefile_avec
gs/toolbin/halftone/ETS/Makefile_sse2
gs/toolbin/halftone/ETS/README.txt
gs/toolbin/halftone/ETS/_eb_sse2.s
gs/toolbin/halftone/ETS/build.bat
gs/toolbin/halftone/ETS/eb_avec.c
gs/toolbin/halftone/ETS/eb_avec.h
gs/toolbin/halftone/ETS/eb_sse2.s
gs/toolbin/halftone/ETS/ets.c
gs/toolbin/halftone/ETS/ipview.html


2014-05-05 11:38:10 -0700
Ray Johnston <ray.johnston@artifex.com>
d2111f620ad95a5deb918c8d64be04012025fed1

Fix clist closepath to wrong start point. Bug 695205, cust 870.

When writing paths into the clist, we simplify the path for each band.
This means that whole line segments that are not present within a band
can be omitted which speeds up path rendering for bands. This code had
a bug that could cause the closepath of a subpath to connect to the
wrong point.

If the last element written for a subpath ends at point X, and the
start point of the first element of the next subpath is that same
point X, then the code would forget to emit a "catchup" moveto.
This would cause a closepath to connect to the initial point of
the previous subpath.

Amazingly, this bug has been there since rev 3.60 (Nov 1995) although
a partial fix was added in 3.68 (May 1996).

gs/base/gxclpath.c


2014-05-07 17:51:21 +0100
Chris Liddell <chris.liddell@artifex.com>
a33588aad3bde9321bd5ea7eaf37b5adba22482c

Bug 695211: (addendum) set SHARE_TRIO for Windows builds

CLUSTER_UNTESTED

common/msvc_top.mak
gs/psi/msvc.mak
xps/xps_msvc.mak


2014-05-05 11:12:47 +0100
Chris Liddell <chris.liddell@artifex.com>
fc0420d74524a9988c8cdf465a2fbf234e343a38

Bug 695211: Allow trio to be shared.

No cluster differences

gs/Makefile.in
gs/base/gs.mak
gs/base/lib.mak
gs/base/trio.mak
gs/configure.ac
main/pcl6_gcc.mak
main/pcl6_msvc.mak


2014-05-06 10:39:42 +0100
Ken Sharp <ken.sharp@artifex.com>
a314230d18fd13810774318d985cc46fe9ed0102

PDF interpreter - work around GSView usage of the interpreter

Bug #695179 "Inert links in PDF and collapsing PDF when opened in gsview with gs ver. newer that 9.07"

Commit 073f460af5bb37edb1849c5d6235048598100437 introduced a cumulative page
count, which is added to pdfmarks when encountered in order to cope with
running multiple input files. The pdfmarks from the second file would
be incorrect unless the number of pages in the first file were added to the
destinationpage numbers.

Unfortunately the (undocumented, unsupported) way that GSView works with the
PDF interpreter to retrieve links failed, because the variable is unavailable
under the conditions that GSView exercises the interpreter.

In this commit we extend the CumultaivePageCount usage so that we first check
if the variable is defined, and if its not, we set a default of '0'. This
should mean that the supported use of the PDF interpreter continues to work
correctly with multiple input files, and restores the GSView behaviour.

No differences expected.

gs/Resource/Init/pdf_main.ps


2014-05-05 11:39:00 +0100
Chris Liddell <chris.liddell@artifex.com>
50e62cb7c50393e0cbb34f82981e7d1f6d7a3a6d

Bug 695206: add directories to deps for zlib/png objs

Ensure that the build directories exist before we try to build any
object files from zlib or png.

No cluster differences.

gs/base/png.mak
gs/base/zlib.mak


2014-04-29 15:46:44 -0700
Ray Johnston <ray.johnston@artifex.com>
2cad20efb9a9a1ec483c58bd6a087a9445ba23dc

Fix wrong tag value for customer 532, file "VINEYARD_p1.pdf"

If the SOURCE alpha is 100%, then replace the tag, otherwise, OR.

gs/base/gdevp14.c


2014-05-02 10:10:41 +0100
Ken Sharp <ken.sharp@artifex.com>
87218e9f187d2d8c36c3eb6721f2725d9834553a

txtwrite - fix a copy/paste error

After allocating memory we checked to see if it was successful but we checked
the wrong variable. Corrected here.

No differences expected.

gs/devices/vector/gdevtxtw.c


2014-05-02 09:51:40 +0100
Ken Sharp <ken.sharp@artifex.com>
63a5201a2b5db40e11dd45cf991a7e5a84d7ce80

txtwrite - clear file handle when file is closed

When we close the output file, set the handle to 0 so that we don't later
attempt to close it again. Apparently closing a closed file causes a
problem on Linux.

No differences expected.

gs/devices/vector/gdevtxtw.c


2014-05-02 09:18:06 +0100
Ken Sharp <ken.sharp@artifex.com>
c82e83c2c10751f048a3f2260c9adaceaca7880e

Fix some scan-build warnings from commit 0476b5036d8175a4817a9385cb6a15b64fab310e

The code dealing with single device parameters was over-aggressive about
reducing the ICC profile setup. In practice this is unlikely ever to be
a problem, there is no real chance that the setup won't be performed
before we reach this point, but its obviously much better to have the code
correct.

This commit essentially copies verbatim the setup code from the normal
get_params device method in the default device.

gs/base/gsdparam.c


2014-04-30 12:19:40 +0100
Chris Liddell <chris.liddell@artifex.com>
34a04b46e5ed098251901ce0b51caa2137928922

Bug 695194: ignore invalid color space in shading

When checking objects for spot colors, ignore an invalid color space in a
shading object.

The code during rendering already deals with this problem (by ignoring the
shading!).

No cluster differences.

gs/Resource/Init/pdf_main.ps


2014-04-30 09:58:11 +0100
Chris Liddell <chris.liddell@artifex.com>
b02681f8dd6799236f040576e35884634e9c3508

Bug 695193: USE_LARGE_COLOR_INDEX=0 on Windows

As we use a pregenerated arch.h for Windows (in order to support cross compiling
64 bit executables on 32 bit systems), we need to handle this in a combination
of the makefile and predefined arch.h

This commit includes equivalent changes for the other pre-defined arch.h files

No cluster differences.

gs/arch/osx-x86-x86_64-ppc-gcc.h
gs/arch/windows-arm-msvc.h
gs/arch/windows-x64-msvc.h
gs/arch/windows-x86-msvc.h
gs/psi/msvc.mak


2014-05-01 15:14:02 +0100
Ken Sharp <ken.sharp@artifex.com>
ad27e65ad745e4dd287e0f7a7a0efb2637472bc2

Implement use of the new 'device param' spec op

Wherever possible, replace the .getdeviceparams call with a call to the
PostScript .special_op to retrieve a single parameter.

This cannot be done unless we can guarantee that the devices we are
interested in will implement the spec_op device method. So some places
which appear at first sight to be candidates can't be done this way.

gs/Resource/Init/gs_cidfn.ps
gs/Resource/Init/gs_fapi.ps
gs/Resource/Init/gs_img.ps
gs/Resource/Init/gs_pdfwr.ps
gs/Resource/Init/gs_setpd.ps
gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_font.ps
gs/Resource/Init/pdf_main.ps
gs/Resource/Init/pdf_ops.ps
gs/psi/zfunc4.c


2014-05-01 15:11:39 +0100
Ken Sharp <ken.sharp@artifex.com>
0476b5036d8175a4817a9385cb6a15b64fab310e

Add support for the 'device param' spec op to devices

Adds support for the spec_op which retrieves a single device parameter to
every device I cna find which currently implements spec_ops.

Add spec_op support to the generic vector device, the txtwrite and the psdf
devices

gs/base/gdevdflt.c
gs/base/gdevprn.c
gs/base/gdevprn.h
gs/base/gdevvec.c
gs/base/gdevvec.h
gs/base/gsdparam.c
gs/base/gxdevice.h
gs/base/lib.mak
gs/devices/gdevcmykog.c
gs/devices/gdevfpng.c
gs/devices/vector/gdevpdfi.c
gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevps.c
gs/devices/vector/gdevpsdf.h
gs/devices/vector/gdevpsdp.c
gs/devices/vector/gdevtxtw.c


2014-05-01 15:07:37 +0100
Ken Sharp <ken.sharp@artifex.com>
e2d3dca4aff619e0b407a8c04e559f9c509b9787

Add a new PostScript operator to permit device spec_ops to be executed

gs/psi/int.mak
gs/psi/opextern.h
gs/psi/zdevice.c


2014-05-01 15:05:15 +0100
Ken Sharp <ken.sharp@artifex.com>
3b03988711bc5ab352c61e4937282e61e5e092aa

Add a new 'spec op' to retrieve a single parameter from a device.

Includes a new structure to be passed as the 'data' parameter to allow us
to pass multiple parameters.

gs/base/gxdevsop.h


2014-04-15 14:18:16 -0700
Ray Johnston <ray.johnston@artifex.com>
e69c464da00208889ed4c55ef0e869ac9246e750

Avoid remap calls if color already mapped to a pure color.

Device colors that map to a pure color are common. The optimization
reduced the number of remap_color calls to 1/390 on a QL pdf test
file (WWTTN1CT). Performance improvement is small if FP is fast.

gs/base/gscolor2.c
gs/base/gxcmap.c


2014-04-29 11:48:48 +0100
Chris Liddell <chris.liddell@artifex.com>
0c5a6d8c142371b84542ab9ea175501f02cfb9bd

Bug 695190: implement glyph width cache for pcl/pxl

Using the FAPI integration of UFST instead of the original PCL specific
one lost an optimisation where glyph widths were cached by the interpreter.

Reintroduce this, and attach the widths cache to the plfont object (instead of
it being global).

No cluster differences.

pl/plchar.c
pl/plfont.c
pl/plfont.h


2014-04-24 16:37:53 +0100
Chris Liddell <chris.liddell@artifex.com>
7580b5f2b52a51d9da6e8eb2188360f1c894ee1e

Bug 695096: make the "display" device the default in gsx

No cluster differences

gs/psi/dxmain.c


2014-04-24 16:22:52 +0100
Chris Liddell <chris.liddell@artifex.com>
496d5b9ee3c8247354152ec8d2b3b8268cdc4430

Add support for changing the default device list at runtime

(Bug 695096)

The graphics library searches a list of preferred devices to find a suitable
default device. Previously that list was created at graphics library compile
time and could not be changed after that.

This change allows the calling application to retrieve the current string that
represents this list, and set its preferred list and order, if required.

No cluster differences.

gs/base/gsdevice.c
gs/base/gsdevice.h
gs/base/gslibctx.c
gs/base/gslibctx.h
gs/base/lib.mak
gs/psi/dwdll.c
gs/psi/dwdll.h
gs/psi/dwnodll.c
gs/psi/gsdll2.def
gs/psi/gsdll32.def
gs/psi/gsdll32metro.def
gs/psi/gsdll64.def
gs/psi/gsdll64metro.def
gs/psi/gsdllARM32metro.def
gs/psi/iapi.c
gs/psi/iapi.h
gs/psi/zdevice.c


2014-04-24 13:20:01 +0100
Chris Liddell <chris.liddell@artifex.com>
5192635686b3a9da14e4531c7ce7ca85cd629a66

Don't pass a 32 bit variable 64 is expected.

On 64 bit platforms the "gsize" type is 64 bits long, thus if we pass a 32 bit
integer into a call expecting to write to a gsize, we get stack corruption.

Use a temporary gsize variable to retrieve the value, and then copy it to the
32 bit integer. As this is for stdin buffers, we're not likely to require
64 bit values!

CLUSTER_UNTESTED

gs/psi/dxmain.c


2014-04-22 23:50:51 -0400
James Cloos <cloos@jhcloos.com>
ab862a54568407fdaff554c56baed9809e23860b

Set the WM_CLASS property when using the x11 DEVICEs.

Add an explicit call to XSetClassHint(1) to the x11 devices to ensure
that the WM_CLASS property is set.

Setting WM_CLASS allows one to configure how gs’s output window behaves.

For comparison, gtk+ sets the display DEVICE’s output window’s
WM_CLASS based on the executable’s name.

Signed-off-by: James Cloos <cloos@jhcloos.com>
Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

gs/devices/gdevxini.c


2014-04-23 09:43:56 +0100
Ken Sharp <ken.sharp@artifex.com>
c79b0ee1dbc1cbbcbe406abd4bc47f617ed5cb2c

pdfwrite - fix Named destinations with Names tree

Bug #695162 "Internal hyperlinks lost when converting to pdf"
Bug #695175 "can't save PDF file if compiled with hyperref packages"

In order to add support for the EMBED pdfmark we had to move the named destinations
from the PDF 1.1 /Dests dictionary to the PDF 1.2+ Names tree. The Names
tree requires that the 'keys' be strings, unlike the old Dests dict where
the keys are of course name objects.

Now the PDF reference says that,with PDF 1.2 and above, both strings and
name objects can be used to refer to named destinations. However it appears
that this is not true for Acrobat, the reference to a named destination must
be a string object if we are using a Names tree.

This commit alters the creation of the Names tree so that we store the actual
destinations as individual objects (this probably wasn't required, but it
mimics Distiller) instead of inline dictionaries, reinstates a missing /D
key in said dictionary and crucially alters the reference to the named
destination so that it is a string and not a name.

The commit also caters for 'unusual' names in named destinations. The PDF
interpreter 'escapes' the name of a name object by adding leading NULLs if
the name contains certain kinds of characters. We weren't catering for that
when converting names to strings for inclusion in the Names tree, which was
leading to an empty object, and caused Acrobat to refuse to save the file.

Finally, while investigating the problems, I noticed a logical error with
DOCVIEW pdfmarks which could result in Open actions being written incorrectly
and this is also fixed here.

No differences expected as the cluster doesn't test this kind of metadata.

gs/devices/vector/gdevpdfm.c
gs/devices/vector/gdevpdfo.c


2014-04-22 19:02:28 +0100
Robin Watts <robin.watts@artifex.com>
963c6827fdcd2e07c2a7bc6848a97eb7ecb3c38d

Update Ghostscript solution for Windows.

Later versions of VS dislike relative paths for the working directory
in the debug set up. The solution is to use "$(ProjectDir)\.." as this
evaluates to the same dir as ".." used to. Update the ReadMe to
reflect this.

Also update the Solution files so that "Output" points to the built
executables. This enables the editing required for the debugging
setup to be simpler.

gs/ghostscript-ufst.vcproj
gs/ghostscript.vcproj
win32/GhostPDL.sln
win32/ReadMe.txt
win32/language_switch.vcproj
win32/pcl.vcproj
win32/svg.vcproj
win32/xps.vcproj


2014-04-22 21:13:51 +0100
Chris Liddell <chris.liddell@artifex.com>
5898732ce7f140bc9bbe9818c8525a02236aa8f0

Add a cast to address compiler warning

No cluster differences.

gs/psi/iapi.c


2014-04-22 17:44:13 +0100
Chris Liddell <chris.liddell@artifex.com>
fb11fa25a622124ab1ceba66b0f6ba165162f056

Bug 695173: skip conversion to UTF8 for "local" encoding

If we're using "GS_ARG_ENCODING_LOCAL" that means arguments are already in the
text encoding we want so no conversion is required (and the get_codepoint()
method is set to NULL).

When that happens, skip the conversion step, and avoid a seg fault.

No cluster differences.

gs/psi/iapi.c


2014-04-21 13:42:40 -0600
Henry Stiles <henry.stiles@artifex.com>
4c1b9214b3e996778f69f33abbf02e9d4da95332

Fix 694958 - raster portions of plot were rotated because the
coordinate system was not properly oriented.

The HPGL/2-RTL's current coordinate system is different depending on
relative extant of plot width and length, rotating the system if the
width is greater than or equal to the height. We did not handle the
equal case properly, we mistakenly used a strict inequality.

pcl/pgdraw.c


2014-04-18 11:08:54 +0100
Ken Sharp <ken.sharp@artifex.com>
12e2eafa38a9932bb136879374423de133075a4a

PDF interpreter - reinstate (and complete) the BMC/BDC/EMC pdfmark support

Bug #695151 "Add BMC/EMC and BDC pdfmark support"

This is the patch supplied by Alexander Grahn with a couple of very minor
additions. Firstly we clean up the Properties resource in pdf_close in case
by some chance there are still properties dictionaries lying around. Secondly
we treat the Properties resource specially (like fonts) in
pdf_store_page_resources().

Because we write the properties dictionaries in line, we must not emit them
in pdf_store_page_resources (they no longer exist for one thing) as this
leads to duplicate objects being created. We may need to revisit this in the
future as I'm not 100% certain this is the best way to proceed. However it
works properly for all the (very few) test cases I have, or have been able
to create.

This patch also 'fixes' the opdfread ps2write header. In the past if a BMC
EMC or BDC was encountered in the PDF file it would try to handle it, but
the handler doesn't exist, leading to PostScript errors. Rather than try
to reconstruct the requisite pdfmarks I've chosen simply to ignore these
constructs. If anyone objects strenuously we can figure out a handler
in future.

No differences expected.

gs/devices/vector/gdevpdfm.c
gs/devices/vector/gdevpdfu.c
gs/devices/vector/opdfread.h
gs/lib/opdfread.ps


2014-04-17 09:45:00 +0100
Ken Sharp <ken.sharp@artifex.com>
b374d709ac920682b4848ea9070681ceb6b44790

PDF interpreter - treat 0 length CIDToGIDMap as if it were not present

Bug #695167 "Output page blank"

The PDF contained a type 11 CIDFont with a CIDToGIDMap whose length was 0,
this caused the type11buildfont code to fail.

Since the CIDTogidMap is optional, treating a 0 length map as 'not present'
seems a sensible solution.

No differences expected

gs/Resource/Init/pdf_font.ps


2014-04-16 09:41:19 +0100
Ken Sharp <ken.sharp@artifex.com>
d2f4c3e592b0f4063ce92c9245dc903ad75495fc

PDF interpreter - improve transparency detection and apply it to annotations

The existence of CA and ca in annotations without appearance streams were
not detected. The FreeText annotation synthesis can apply transparency if
present, so we need to detect it and push the compositor.

Also, add the code to the FreeText annotation appearance synthesis to apply
transparency.

A few (3) Sumatra PDF files now render very slightly differently, and the
same files now produce larger PostScript than they did before (because they
are rendered to images)

gs/Resource/Init/pdf_draw.ps
gs/Resource/Init/pdf_main.ps


2014-04-15 12:51:51 +0100
Ken Sharp <ken.sharp@artifex.com>
0ace93f19464cab701f117ba1e6ee489062748e5

PDF interpreter - sunthesise appearances for FreeText annotations

Bug #693731 "Freetext annotations are not printed"

The FreeText annotation in question has no appearance stream and we did
no previously synthesise one. This commit adds code to do so, it should
work with UTF16-BE text but I don't have a test file for this.

The existing code to draw annotation borders was insufficient, it did not
correctly drop elements drawn with a colour of /C[] and would not handle
colours (/C) defined in anything except RGB space.

The Sumatra test file annotations_galore_II.pdf exhibits a progression
with this commit (its the only other example of this I could find)

gs/Resource/Init/pdf_draw.ps


2014-04-15 10:09:19 +0100
Ken Sharp <ken.sharp@artifex.com>
b0a655cb457f5d719a647ef0663c4770c764cef7

pdfwrite - disable the BMC/BDC/EMC pdfamrks again

The previous commit b90e081b8ad9b64ae4b66bd27262a9582c129cfc could create
PDF files which Acrobat couldn't open.

This disables the pdfmark processing until I find out why.

gs/devices/vector/gdevpdfm.c


2014-04-15 09:35:45 +0100
Ken Sharp <ken.sharp@artifex.com>
b90e081b8ad9b64ae4b66bd27262a9582c129cfc

pdfwrite - implement the BDC, BMC and BDC pdfmarks

Bug #695151 "Add BMC/EMC and BDC pdfmark support"

Adopt the patch from Alexander Grahn, with the small addition of code to
free the Properties resource at the end of the job.

No differences expected.

gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfm.c
gs/devices/vector/gdevpdfx.h


2014-04-14 16:47:35 +0200
Norbert Janssen <norbert.janssen@oce.com>
723ae69281aec8c7e9ad5192fe77761f4e476186

Bug 695049: plexity handling in pcl

Handle plexity in pcl (and its interactions with left/top offset
registrations, pageside selections).

pcl/pcjob.c
pcl/pcpage.c
pxl/pxsessio.c


2014-04-11 22:33:07 -0600
Henry Stiles <henry.stiles@artifex.com>
44a0504d79c28baa6d7a5eda6d5a697424be1c7b

Fix 695417 cursor tracking broken.

The bug subject is incorrect, the problem was initially diagnosed as a
problem with GL/2 and PCL cursor interaction, but in fact it was the
rounding of the translation components of PCL raster to device space
matrix produced incorrect results at some resolutions.

This problem needs a bit more investigation but empirically not
rounding translation components seems to give better results. I don't
know if this is because it more closely emulates HP's calculations or
if there is another interaction in the ghostscript graphics library
which makes the integral translation components inappropriate.

The change results in many single pixel translations in the regression
tests.

pcl/rtgmode.c


2014-04-11 10:46:11 -0600
Henry Stiles <henry.stiles@artifex.com>
fdffeb917e804522ed7117f19ac230c9d23d158f

Fix bug #695129 black background painted with the pxlcolor device.

PXL has no high level understanding of PostScript or PDF transfer
functions so we fall back to having the graphics library handle color
conversion when a transfer function is set.

gs/devices/vector/gdevpx.c


2014-04-09 14:32:40 +0100
Ken Sharp <ken.sharp@artifex.com>
c8673cb8209a9f294721fae7a1842fcd8940ecab

PDF interpreter - implement the (not yet documented) revision 6 security handler

Copied from the MUPDF implementation. This does cause a few differences,
I'm not really sure why as the code can't possibly be causing them. I assume
its simply memory differences of some kind.

gs/Resource/Init/pdf_sec.ps
gs/psi/int.mak
gs/psi/zpdf_r6.c


2014-04-08 14:10:45 -0600
Henry Stiles <henry.stiles@artifex.com>
cd8b2819ddd9c9aba33a19c8913861767296d576

Disable the remaining long form color commands, fixing 695110.

All of the color long form commands appear to be no longer supported
on modern HP devices and our implementation of them frequently results
in unexpected output and difficult to find bugs. This change gets rid
of the remaining commands which affected white and black point
settings. Aside from fixing the test file in the bug this improves
several panels in the Quality Logic FTS against the Color Laserjet
4700, i.e. panels 810 and 814.

The command is simply truncated so the long form command is
transformed into a corresponding short form allowing for setting of
the color space, bits per component, etc. The long form code remains
for now and is easily brought back if we get user feedback that there
is an HP device we care to support with these extended color commands.
If that is the case it will have to be handled with conditional
compilation or a device emulation mode. We'd like to avoid that if
possible.

pcl/pccid.c


2014-04-07 19:32:45 +0200
Norbert Janssen <janssnjj@xs4all.nl>
2d0a6b70f3578a1e4ba61d05d1682a0e2a8f764b

Bug 695138: PCL pushcursor in definemacro not stored correctly (combined command)

When a macro is defined with a combined command and de define is not
the closing command (i.e. 0x) then the continuation as stored in the
macro_prefix (pcparse.c) is not correct. It contains only the <ESC>&,
but should have been <ESC>&f).
Thus a following 0S is stored as <ESC>&0S, i.s.o. <ESC>&f0S, and is not
recognized as a valid push-cursor command.

pcl/pcparse.c


2014-04-07 10:47:41 +0100
Chris Liddell <chris.liddell@artifex.com>
11bb9975a044bf281a498a8f20d3f2436725ad3d

Bug 692577: tweak lprsetup.sh for non-default locations

Provide a command line option to lprsetup.sh to specify where the filter files
should be written. Also, implement a simple heuristic to attempt to identify
the correct location for the filter files.

Finally, if we rely on the above heuristic, issue a warning and give the user
the chance to abort the script.

CLUSTER_UNTESTED

gs/lib/lprsetup.sh


2014-04-04 15:19:47 +0100
Ken Sharp <ken.sharp@artifex.com>
7e1117aa46696ea3d05f54e4bdd13d6641d53d8a

PXL font code - correct the order of a matrix multiplication

Bug #693947 "The Intellifont as type 3 font commit causes a regression."

Matrix multiplication is not commutative, and the order of operands was
incorrect in this case. Since it only matters for high level devices it
naturally only showed up with pdfwrite.

This shows a progression (with pdfwrite) in C207.bin and bug691464b.xl
which actually appears to be the same file.

pxl/pxfont.c


2014-04-04 14:42:20 +0200
Norbert Janssen <norbert.janssen@oce.com>
2024f434636139c9da20ab3afe0356d5e29c2c55

Bug 695100: pxl jpeg decoding sometimes misses scans

jpeg decoding (s_DCTD_process) is used by all pdls (pdf/ps/pcl/pxl/xps)
but in different ways.
The PDLs provide an output buffer (pw->ptr) for the decoded scan(s), and
an input buffer (pr->ptr) with inputdata. XPS's outputbuffer can contain
the complete image, the other pdls provide a buffer for 1 scan.

So XPS calls the jpeg-decoder once for the complete image (including the
EOI marker), the other pdls call repeatedly for 1 scan, until all scans
have been retrieved.

The jpeg-decoder (s_DCTD_process) calls gs_jpeg_read_scanlines(inputdata)
to decode 1 scan (using the inputdata). If inputdata is not enough the pdl
is asked for more, until (atleast) 1 scan is available. This scan
(samples) is then copied into the outputbuffer (goto dumpbuffer:).
If the outputbuffer is not filled completely, the jpeg-decoder is asked
for another scan (i.e. for XPS) which is then also added to the
outputbuffer.
Else (if the outputbuffer cannot contain the next scan) it is passed back
to the graphics-lib (pl_image_data), the outputbuffer is emptied and the
jpeg-decoder is called for the next scan.

However, with PXL, provided outputbuffer is exactly the size of a scan.
This means that it is only transferred, when s_DCTD_process wants to copy
a next scan (which fails because the outputbuffer is full; the
transferring is delayed), or end-of-data is reached.
If however, the gs_jpeg_read_scanlines() needs multiple inputbuffers to
provide this next scan, then this next scan will be copied over the not
yet transferred scan, thus causing the previous scan to be missed.

The fix in sdctd.c prevents the delaying and copies immediately.
The mod in pximage.c ensures that the complete imagedata (incl the
jpeg-EOI) is consumed (otherwise a bufferoverflow is triggered).

Some (PXL) cluster differences (progressions).

gs/base/sdctd.c
pxl/pximage.c


2014-04-02 22:57:33 +0100
Chris Liddell <chris.liddell@artifex.com>
89d0847d1f12a7069ccf2d6eff6328fd1f9aee10

Bug 695133: fix invalid types in form xobject matrix

The PDF in question has a name object rather a real or integer object as the
last entry in the matrix.

Before rendering the form, check the entries in the matrix, and if there is
an invalid type, replace it with a real value. I've opted to use 0.00 as the
replacement value, and this *seems* to reflect Acrobat's behavior. Creating
a test case where one of the scale values in the matrix is an invalid type
results in Acrobat not displaying the form, which hints at a degenerate matrix.
We have also previously established that Acrobat substitutes zero in other
similar cases.

No cluster differences.

gs/Resource/Init/pdf_draw.ps


2014-04-02 13:15:58 +0100
Ken Sharp <ken.sharp@artifex.com>
f3b31c9544c05f87fc0a58b133c5757311c49bbc

PS interpreter - don't limit sampled tint transforms to 64k data

Bug #693237 "PDF restrictions on PS function"

The bug title is misleading, as is the comment in the report. The problem
has little to do with PDF restrictions. When we get a tint transform for a
complex space we convert it into a PostScript function rather than maintaining
the tint transform as PostScript (we do this for performance reasons).

In general we try to use a type 4 (PostScript calculator) function, as these
are the most flexible variety, but these are not defined for PostScript, only
for PDF, and it is not always possible to handle a tint transform as a type
4 function. In this case we fall back to using a type 0 (sampled) function.

In order to create a sampled function we must (obviously!) sample the original
function, and create a lookup table to store the samples. This is an M-in
N-out table, so as the number of inputs and outputs increases the size of
the table increases dramatically. Because we store the data in a string
the code checks the size of the lookup table against 64k and if it is too
large (as in this case) rejects it and tries again, taking fewer samples.

The minimum number of samples is 2 (we must sample each end of the ramp),
and if we cannot fit that into a 64k string, then we returned a rangecheck
error.

However we now permit strings greater than 64k, so while we still want to
keep the lookup table to a sensible size, we should not abort just because
the table is > 64k.

This commit alters the logic so that we try to fit into a 64k string, but
if we've reached the minimum number of samples we don't bother checking any
more and simply use a string big enough to hold the data.

This seems to work, however the example file is reduced to the point where
nothing is visible on the output, and although the bug report references
a customer file its not attached to the report, nor is there any other
information which would allow me to find the original file. So this isn't
hugely well tested in this unusual condition.

No differences expected.

gs/psi/zfsample.c


2014-04-01 14:39:12 +0100
Ken Sharp <ken.sharp@artifex.com>
fb1ac66da597d9d6fe773ddaf3413098028cc6a0

pdfwrite - while processing pdfmarks, ensure strings are null-terminated before using sscanf

Bug #695119 "Ghostscript inconsistently fails creating links with pdfmark"

The problem turns out to be that while handling SrcPage in a pdfmark the
code executed sscanf on a string which was not guaranteed to be null-terminated

Here we copy the data and explicitly null terminate the copy before running
sscanf, so that the returned value is reliable.

Also remove an uninitialised variable that could potentially have caused a problem.

No differences expected.

gs/devices/vector/gdevpdfm.c


2014-03-31 20:25:27 +0100
Chris Liddell <chris.liddell@artifex.com>
5b5962e8610a279aba3841adb80d8e66bca2caa9

Bug 695087: modify jbig2 device to output jb2 files

The jbig2 device originally was written to output "bare" streams, as are written
to PDF files, but is of very limited use.

This commit changes it so the "bare" stream is written to a jb2 container file,
which can be easily opened, for example, by the jbig2dec command line tool.

Note that the output seems to be inverted, I haven't "fixed" that as I'm not
sure whether our jbi2 output is wrong, or the jbig2dec conversion to PNG is
wrong.

This is primarily to ease regression testing of the Luratech jbig2 encoder
integration.

No cluster differences.

gs/base/sjbig2_luratech.c
gs/base/sjbig2_luratech.h
gs/devices/gdevjbig2.c


2014-03-31 20:21:03 +0100
Chris Liddell <chris.liddell@artifex.com>
0ccf3294ecd3dbaa654279ca605dadccb8bd122a

Bug 695113: fix fpng device build handle shared zlib

No cluster differences.

gs/devices/devs.mak


2014-03-31 10:58:58 +0100
Ken Sharp <ken.sharp@artifex.com>
6cc95ce9fa08d126fc7c701f6eccc1cf49781e0b

ps2write - fix CompressPages=false and SubFileDecode filter

commit c30fb930e7c38dd7bcf47b0305e77cb6ba003bc3 altered the default of the
CompressPages switch to false, this uncovered an interesting bug. The code
previously used the string 'endstream' as the EODString argument for a
SubFileDecode filter. When the stream contents are compressed this is reliable
but if the stream contents are not compressed they may contain the string
'endstream' (eg a document describing PDF syntax) which would cause premature
end of data detection.

In this commit we instead set the EODString to the empty string () and set
the EODCount to the length of the stream. This is more reliable, because we
trust the stream length we create ourselves, but does mean that the stream
can no longer be edited simply, the length must now be consistent with the
actual stream contents.

This fixes a bug introdcued with commit c30fb930e7c38dd7bcf47b0305e77cb6ba003bc3
involving the test file DML_003-2010-1_8.pdf

gs/devices/vector/opdfread.h


2014-03-29 10:43:27 +0000
Ken Sharp <ken.sharp@artifex.com>
083fa3f6912ad3f44fc94d5e1a362878576b0024

ps2write - document incompatibility of ProduceDSC with the page options

gs/doc/Ps2ps2.htm


2014-03-29 10:42:57 +0000
Ken Sharp <ken.sharp@artifex.com>
c30fb930e7c38dd7bcf47b0305e77cb6ba003bc3

ps2write - alter the default of CompressPages to false for ps2write

gs/Resource/Init/gs_pdfwr.ps


2014-03-29 10:42:29 +0000
Ken Sharp <ken.sharp@artifex.com>
c126936d5bd81af58743d8770d9d21ac22e64211

ps2write - set EPS2Write to false when ProduceDSC is false

Due to the way that DSC and non-DSC headers are emitted the variable EPS2Write
wasn't set, which resulted in a PostScript error.

gs/devices/vector/gdevpdfu.c


2014-03-28 13:18:34 +0000
Ken Sharp <ken.sharp@artifex.com>
27f586bb4a5f5a3ffe6508874527eae684039380

pdfwrite - clamp CropBox to MediaBox for PDF/X output

Bug #695120 "Page boxes not nested properly when creating PDF/X using files with bleed"

The description of the bug is not accurate, the bleed is irrelevant.

The problem is caused because the specimen file has ridiculously accurate
MediaBox etc, specified to 3 decimal places. Due to rounding differences the
CropBox can be a tiny amount (thousandths of a millimeter) large than the
MediaBox.

I cannot find anywhere in the PDF/X-3 spec which says that the CropBox has
to be smaller than the MediaBox, but the Acrobat pre-flight tool complains
if it is.

This commit simply clamps the CropBox to the MediaBox that actually gets written
to the PDF file (for PDF/X only) and prevents the problem.

No differences expected

gs/devices/vector/gdevpdf.c


2014-03-27 13:13:53 +0000
Ken Sharp <ken.sharp@artifex.com>
4840334cee8f79d3dedb8b95899dc43e7a55779a

pdfwrite - don't emit ICC spaces with no Alternate and no potential default alternate

Bug #691500 "Bad pdf file generated with pdfwrite"

The XPS file cotnains a 6 colour ICC profile, the XPS interpreter passes this
along as an ICCBased space, but does not construct an /Alternate space for
it. pdfwrite would then emit a PDF file with a 6 colour profile and no
/Alternate, which is illegal as there is no possible way to convert the
input into a device space without handling the ICC profile.

If we encounter this (which I think is only possible from XPS), we now give
up on the ICC profile and instead convert to the ProcessColorModel colour
space instead.

Ghostscript can read the resulting file without error, Acrobat gives a
'drawing error' and evince complains about input profiles, but in general
I'm going to label this as a fix.

No differences expected

gs/devices/vector/gdevpdfk.c


2014-03-27 08:23:37 +0000
Ken Sharp <ken.sharp@artifex.com>
094451a13d990ba0f64c285ba157b6f45deb09e6

txtwrite - fix a buffer overrun

Bug #695109 "gswin32c produces an access violation when using txtwrite"

A cut and paste error led to us trying to copy a char string as a sequence
of shorts, resulting in overrunning the source buffer. Depending on the
precise memory layout this could cause access to unallocated memory and
an application crash.

Thanks to José Antonio for persisting with this bug and doing all the
debugging work.

No differences expected.

gs/devices/vector/gdevtxtw.c


2014-03-26 09:09:12 +0000
Chris Liddell <chris.liddell@artifex.com>
0b40e26308b5a728b1b1cbab7104c7da6b57618f

Update docs for release.

gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-03-26 12:52:30 +0000
Chris Liddell <chris.liddell@artifex.com>
221a37e79b9d0e93d73b257bf16fe9c96c7505a0

Bump version number.

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2014-03-26 07:34:18 +0000
Chris Liddell <chris.liddell@artifex.com>
ee4458671553d95302439bacbbb66333d019b83a

Add eps2write to Linux gs and all ghostpdl bulids

No cluster differences.

gs/Makefile.in
gs/configure.ac
main/pcl6_gcc.mak
main/pcl6_msvc.mak


2014-03-26 08:46:33 +0000
Ken Sharp <ken.sharp@artifex.com>
c481ce6ab184e6cd109b856d6ba6d2bd440be85b

ps2write - better documentation for HaveTrueTypes

The documentation for HaveTrueTypes stated that TrueType fonts would be
emitted as bitmap fonts if -dHaveTrueTypes is false. This information was
only partially correct, if the size of the bitmap (as determined by the
text size and resolution) exceeds the maximum for the cache then we don't
put the bitmap in a font at all, we emit it as an inline image.

gs/doc/Ps2pdf.htm


2014-03-14 10:00:05 +0000
Chris Liddell <chris.liddell@artifex.com>
de72ef09fd37d51755faefdb4d719c78ac85d60c

doc changes from 9.12 release

Update version number, release and copyright dates.

Update release notes, changelog and couple of tweaks

Update product string and date for release.

CLUSTER_UNTESTED

gs/Makefile.in
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/msvc.mak
gs/psi/winint.mak


2013-12-31 15:19:54 +0000
Robin Watts <robin.watts@artifex.com>
cdde0e961884a0dbe7e576af5f2f73df9527af6b

Import LCMS 2.6 Release version

Update gs calling code to cope, including simple mutex
handlers. Also incorporates our optimisations etc.

gs/base/gsicc_lcms2.c
gs/base/lib.mak
gs/lcms2/AUTHORS
gs/lcms2/ChangeLog
gs/lcms2/Makefile.am
gs/lcms2/Makefile.in
gs/lcms2/Projects/VC2010/testbed/testbed.vcxproj
gs/lcms2/Projects/VC2010/testbed/testbed.vcxproj.filters
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcproj
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj
gs/lcms2/Projects/VC2012/jpegicc/jpegicc.vcxproj.filters
gs/lcms2/Projects/VC2012/lcms2.rc
gs/lcms2/Projects/VC2012/lcms2.sln
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcproj
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj
gs/lcms2/Projects/VC2012/lcms2_DLL/lcms2_DLL.vcxproj.filters
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcproj
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj
gs/lcms2/Projects/VC2012/lcms2_static/lcms2_static.vcxproj.filters
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcproj
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcxproj
gs/lcms2/Projects/VC2012/linkicc/linkicc.vcxproj.filters
gs/lcms2/Projects/VC2012/psicc/psicc.vcproj
gs/lcms2/Projects/VC2012/psicc/psicc.vcxproj
gs/lcms2/Projects/VC2012/psicc/psicc.vcxproj.filters
gs/lcms2/Projects/VC2012/resource.h
gs/lcms2/Projects/VC2012/testbed/testbed.vcproj
gs/lcms2/Projects/VC2012/testbed/testbed.vcxproj
gs/lcms2/Projects/VC2012/testbed/testbed.vcxproj.filters
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcproj
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj
gs/lcms2/Projects/VC2012/tiffdiff/tiffdiff.vcxproj.filters
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcproj
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcxproj
gs/lcms2/Projects/VC2012/tifficc/tifficc.vcxproj.filters
gs/lcms2/Projects/VC2012/transicc/transicc.vcproj
gs/lcms2/Projects/VC2012/transicc/transicc.vcxproj
gs/lcms2/Projects/VC2012/transicc/transicc.vcxproj.filters
gs/lcms2/Projects/cppcheck/lcms2.cppcheck
gs/lcms2/Projects/mac/.DS_Store
gs/lcms2/Projects/mac/._.DS_Store
gs/lcms2/Projects/mac/LittleCMS/.DS_Store
gs/lcms2/Projects/mac/LittleCMS/._.DS_Store
gs/lcms2/Projects/mac/LittleCMS/Info.plist
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.mode1v3
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/mariama.pbxuser
gs/lcms2/Projects/mac/LittleCMS/LittleCMS.xcodeproj/project.pbxproj
gs/lcms2/aclocal.m4
gs/lcms2/autogen.sh
gs/lcms2/configure
gs/lcms2/configure.ac
gs/lcms2/doc/LittleCMS2.5 API.pdf
gs/lcms2/doc/LittleCMS2.5 Plugin API.pdf
gs/lcms2/doc/LittleCMS2.5 tutorial.pdf
gs/lcms2/doc/LittleCMS2.6 API.pdf
gs/lcms2/doc/LittleCMS2.6 Plugin API.pdf
gs/lcms2/doc/LittleCMS2.6 tutorial.pdf
gs/lcms2/include/Makefile.in
gs/lcms2/include/lcms2.h
gs/lcms2/include/lcms2_plugin.h
gs/lcms2/m4/acx_pthread.m4
gs/lcms2/src/Makefile.in
gs/lcms2/src/cmscam02.c
gs/lcms2/src/cmscgats.c
gs/lcms2/src/cmscnvrt.c
gs/lcms2/src/cmserr.c
gs/lcms2/src/cmsgamma.c
gs/lcms2/src/cmsgmt.c
gs/lcms2/src/cmsintrp.c
gs/lcms2/src/cmsio0.c
gs/lcms2/src/cmsio1.c
gs/lcms2/src/cmsopt.c
gs/lcms2/src/cmspack.c
gs/lcms2/src/cmsplugin.c
gs/lcms2/src/cmsps2.c
gs/lcms2/src/cmstypes.c
gs/lcms2/src/cmsvirt.c
gs/lcms2/src/cmswtpnt.c
gs/lcms2/src/cmsxform.c
gs/lcms2/src/extra_xform.h
gs/lcms2/src/lcms2.def
gs/lcms2/src/lcms2_internal.h
gs/lcms2/testbed/Makefile.am
gs/lcms2/testbed/Makefile.in
gs/lcms2/testbed/ibm-t61.icc
gs/lcms2/testbed/new.icc
gs/lcms2/testbed/testcms2.c
gs/lcms2/testbed/testcms2.h
gs/lcms2/testbed/testplugin.c
gs/lcms2/testbed/testthread.cpp
gs/lcms2/testbed/zoo_icc.c
gs/lcms2/utils/delphi/lcms2dll.pas
gs/lcms2/utils/jpgicc/Makefile.in
gs/lcms2/utils/jpgicc/jpgicc.c
gs/lcms2/utils/linkicc/Makefile.in
gs/lcms2/utils/psicc/Makefile.in
gs/lcms2/utils/psicc/psicc.c
gs/lcms2/utils/tificc/Makefile.in
gs/lcms2/utils/tificc/tificc.c
gs/lcms2/utils/transicc/Makefile.in
gs/lcms2/utils/transicc/transicc.1


2014-03-24 10:00:23 +0000
Ken Sharp <ken.sharp@artifex.com>
c74e146b74fe6db9f3a91ff71b7478dac79b5c1a

Repair performance degradation with PostScript functions

Bug #693561 "gs_c_param_list_release() corrupts memory"

The commit 289aa28f46e2be1c87c34d44ee86dec41e87506b removed the explicit
test of the device name with a test against a specifically named device
parameter. However, as noted in the bug, this led to a performance penalty
as the parameter was re-evaluated inside a loop.

This commit moves the parameter evaluation outside check_psc_function()
altogether as this routine can be called recursively. Instead the parameter
is retrieved in the calling routines and passed as a new argument.

No differences expected

gs/psi/zfunc4.c


2014-03-24 09:56:32 +0000
Ken Sharp <ken.sharp@artifex.com>
23666d2037f14a1ef880e60bce9008203e502436

Make C 'param' collections free memory as per 'ref' params

Bug #693561

The 'memory corruption' referred to in the bug report is actually a memory
leak, and is only exposed by using the -Z? (check pointers) debugging switch.
As such its not as disastrous as the bug report makes it sound (I'm unable
to reproduce the SEGV).

Its caused because when we retrieve a parameter list from the device, we do
so using the 'C' param list structures rather than the PostScript 'ref'
params. One of the things that pdfwrite returns is image dictionaries, and
these require us to create a temporary param list. With the 'ref' param
structures, when we call param_end_write_dict (redirected through a macro
to param_end_write_collection, further redirected through a macro to
plist->procs->end_xmit_collection) the memory used by the list is explicitly
freed, when we use the 'C' param, it is *NOT* freed.

All the places in the code that I can find where we call param_end_write_dict
seem to assume that this will also free the memory. This commit modifies
the C param list code so that it also frees the memory. At least now the
two param types behave the same.

No differences expected

gs/base/gscparam.c


2014-03-22 04:07:14 +0000
Hin-Tak Leung <hintak@ghostscript.com>
8ae4ee220766aa180150eafeffe4f094f1354f92

Fixes PXL segfault with trying to set up icc transform for bitmasks, Bug 695103

Masks also get treated as images (the conditionals about being masks,
bit-depths, interpolation, etc is getting really long...), and the
iccTranform change mistakenly try to set up link transform for such.
There should be an additional conditional (where this change is) for
the data not being masks. This is equivalent to not
setting up icc tranform for missing color space info (Part 1), but clearer.
The other two check images having valid color space info, and should stay.

Cluster tested. No difference expected.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/devices/vector/gdevpx.c


2014-03-21 21:44:30 +0000
Hin-Tak Leung <hintak@ghostscript.com>
553cea8ecaeba7a48837325da098583eaef5f1ca

Further protection against PXL segfault with image data without colorspace info, Bug 695103

Someghow since gs 9.10, it becomes possible for image data to arrive
without colorspace info, and accessing such causes segfault; we should
protect against it in any case, but further investigation (possibly
by somebody else) is needed on how that happened. Part 2 of the fix.

Cluster tested. No difference expected.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/devices/vector/gdevpx.c


2014-03-21 21:42:30 +0000
Hin-Tak Leung <hintak@ghostscript.com>
b780ff05fd1959202b27f9c0da383968a7e398e9

Protection against PXL segfault with image data without colorspace info, Bug 695103

Someghow since gs 9.10, it becomes possible for image data to arrive
without colorspace info, and accessing such causes segfault; we should
protect against it in any case, but further investigation (possibly
by somebody else) is needed on how that happened. Part 1 of the fix.

Cluster tested. No difference expected.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/devices/vector/gdevpx.c


2014-03-20 11:40:18 +0000
Ken Sharp <ken.sharp@artifex.com>
b504d2f72c6903a4dbf66176ec3358e4cd5d151d

pdfwrite - fix multi-plane images with < 8bpc

The code to pack multiple bit planes into bytes didn't properly account
for the number of bytes to be written to the output. We always wrote a
full block of bytes as long as the number of bytes remaining was not
greater than our block size. That is, it did not account for the fact that
we might not need to write a complete block of bytes, in the case where the
number of bytes left was exactly equal to the size of our internal block.

Fixed that by changing the '>=' to '>' so that if the size was equal we would
properly check to see how many bytes we actually need to write. This then
uncovered another problem, if the width of the image in bits was a multiple
of the block size, then we wouldn't write any data. Fixed that too.

No differences expected.

gs/devices/vector/gdevpdfi.c


2014-02-14 23:18:53 +0000
Hin-Tak Leung <hintak@ghostscript.com>
bccf1cdd8d8936a8ff89ea09c1887a4816ca5685

Miscellaneous corrections to typos and comments, accumulated over a while.

Not cluster tested.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/base/gxblend.h
pcl/pcindxed.c
pcl/rtgmode.c
pcl/rtraster.c


2014-03-10 00:37:09 +0000
Hin-Tak Leung <hintak@ghostscript.com>
d1f1b3eccb689bb9c1fa80f20f222c44ed563e99

Fixes unicode-processing related slowdown from the python 2 to 3 migration.

Replaces the last "+" usage by join() in the hex dump part.

Concatenation via "+" in python has always known to be slow.
It becomes of acceptable speed towards the end of the python
2 cycle, and becomes very slow again when 3-migration
compatibility for python 2 is switched on. This is a
Python string processing idiosyncrasy - the optimal
ways of concatenating strings in python is via join(), instead
of the more common "+".

3MB test file (attachment 9725 to bug 694086) - any
non-small PXL file should do. "+" is almost 20x slower
than join():

$ time python2 before/pxldis.py test.pxl > /dev/null

real 4m39.810s
user 4m9.798s
sys 0m2.548s

$ time python3 before/pxldis.py test.pxl > /dev/null

real 0m13.150s
user 0m12.374s
sys 0m0.081s

$ time python2 after/pxldis.py test.pxl > /dev/null

real 0m18.653s
user 0m17.871s
sys 0m0.129s

$ time python3 after/pxldis.py test.pxl > /dev/null

real 0m13.295s
user 0m12.969s
sys 0m0.053s

Not cluster tested. cluster testing is not relevant to this script.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

tools/pxldis.py


2014-03-12 15:16:05 +0000
Hin-Tak Leung <hintak@ghostscript.com>
41ab485d48890ecadc3d5f74657b644f9d1a8d7f

pxlmono/pxlcolor: Transform deep (24-bit) images with an ICC transform to emit high-level images. Bug 690867.

Deep images with an associated rendering intent
or custom colour spaces, or icc profiles, could be emitted
more efficiently as high-level PXL images if the individual
pixels values are transformed through the icclink transform.

The new code path is off by default, and switched on via an option
(-diccTransform). When the new code is thoroughly tested, this
option will be removed and the new code path will become the default.

Cluster tesed - new code is optional and off by default,
no difference is expected.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/devices/vector/gdevpx.c


2014-03-12 15:03:58 +0000
Hin-Tak Leung <hintak@ghostscript.com>
4b44b41c9b6c4a7e5ebf03b6970f9be39548443b

Implements PCL XL Compression Mode 2 (JPEG), and updated documentation and other support files. Bug 694282.

This patch implements PCL XL Compression Mode 2 (JPEG) -
Bug 694282. Compression Mode 2 would be appropriate when the
original image data is already lossy (Bug 691880 - JPX,
Bug 690867 - JPEG).

Unlike compression mode 1 (RLE) and 3 (DeltaRow), JPEG
is not appropriate for arbitrary indexed-coloured images
or masks, so this new functionality will silently fall
back to RLE for masks and other unsuitable data.
Currently it is limited to apply to only 24-bit input to
be on the conservative side. Further furture improvement
may be possible for gray 8-bit images to emit gray jpeg
if those can be identified accurately.

Cluster tested. The new functionality is optonal and controlled by
-dCompressMode=2 (default 1) so no difference is expected.

Signed-off-by: Hin-Tak Leung <hintak@ghostscript.com>

gs/devices/devs.mak
gs/devices/vector/gdevpx.c
gs/doc/Devices.htm


2014-03-18 11:41:44 -0700
Ray Johnston <ray.johnston@artifex.com>
39da69e074c36e5a56ac52041444e4af1aa9a7c8

Fix Segfaults caused by 'vertical stripe' fix (f18fac0).

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.

gs/base/gxht_thresh.c


2014-03-18 11:39:51 +0000
Ken Sharp <ken.sharp@artifex.com>
7c8b652e6e9019c8e9c9731f8e7a59c3505db638

pdfwrite - null a pointer to avoid an enumeration problem

pdev->vgstack wasn't being set to NULL when freed, which could lead to
garbage collection problems.

At the same time, remove two macros which I really don't like (and made this
problem difficult to locate) and set a couple more pointers to NULL when
the contents are freed.

Bug #694380, but unfortunately this simply causes a seg fault in a different
location.

gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdtd.c


2014-03-18 10:44:49 +0000
Chris Liddell <chris.liddell@artifex.com>
f20811cce805fcc748e58112ec4fdaa87b934960

Bug 694612: add some bounds checking to fax decode

to prevent writing off the end of the buffer with corrupted data.

No cluster differences.

gs/base/scfd.c


2014-03-17 13:07:37 -0700
Michael Vrhel <michael.vrhel@artifex.com>
2ab7e7b2d8a7cf92b3cb5c4e6d4455e4badc98de

Fix to turn of BPC when we are using the Gray_to_K ICC profile.

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.

gs/base/gsicc_cache.c
gs/devices/gdevtifs.c


2014-03-17 13:06:05 +0000
Ken Sharp <ken.sharp@artifex.com>
5412d27994c9abec041e798592b2c842d8910a5c

pdfwrite - handle CIDFonts with mixed type 3/type 1 descendants

Bug #691096 "the file generated by ps2pdf from this PS file does not display some chars"

The input has a CIDFont declared which uses both a type 1 and a type 3 font
as descendants. The pdfwrite device family can't handle this, resulting in
/.notdef glyphs.

In this commit; when we detect a switch to a type 3 descendant, and the previous
font was not a type 3, we set 'type3charpath' to true. This forces the
text handling to fall back to a bitmap font mode for this text.

This is less than ideal, but its a very rare occurence and does result in
all the text being rendered.

No differences expected

gs/devices/vector/gdevpdtc.c


2014-03-15 12:47:22 -0700
Ray Johnston <ray.johnston@artifex.com>
4f18e30f56b7fcc339b617e82e948ed96d561cde

Git rid of some simple 'unused' compiler warnings.

gs/base/gsfcmap1.c
gs/base/gsicc.c
gs/base/gsicc_create.c
gs/base/gxdcolor.c
gs/base/gxht_thresh.c
gs/base/gxp1fill.c
gs/base/gxshade.c


2014-03-14 14:39:51 -0700
Ray Johnston <ray.johnston@artifex.com>
1e79e7e3f12404a85d52dfa28b254998b39b0782

Fix broken detection for fast image threshold, planar and GrayValues > 2.

The detection enabled ALL planar devices, so bits per component 2 and
above would use the 1 bit methods.

gs/base/gxicolor.c


2014-03-14 09:44:08 +0000
Chris Liddell <chris.liddell@artifex.com>
bb78de3c11b86088126d3f5d2a7a4c817caf4935

Bump version numbers.

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2014-03-13 20:35:53 -0700
Ray Johnston <ray.johnston@artifex.com>
f18fac03991c6164dfad81f03b3e7a8a4eadf243

Fix sporadic vertical stripes with planar fast image thresholding (pkmraw)

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).

gs/base/gxht_thresh.c


2014-03-26 09:09:12 +0000
Chris Liddell <chris.liddell@artifex.com>
a76558de66281375e2a738a2380ca62c0fd223d4

Update docs for release.

gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-03-26 09:06:56 +0000
Chris Liddell <chris.liddell@artifex.com>
3ab7b7c314bf478ad76dae0f90f2dd6370fa11a6

Up version number

gs/Resource/Init/gs_init.ps
gs/base/version.mak


2014-03-26 07:34:18 +0000
Chris Liddell <chris.liddell@artifex.com>
0e3e14fce68beb871c48e427af6904f7441bf803

Add eps2write to Linux gs and all ghostpdl bulids

No cluster differences.

gs/Makefile.in
gs/configure.ac
main/pcl6_gcc.mak
main/pcl6_msvc.mak


2014-03-25 08:39:14 +0000
Chris Liddell <chris.liddell@artifex.com>
3059462485a66539f8a036b1bc60584f74901ac2

Update product string and date for release.

gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1


2014-03-14 11:56:29 +0000
Chris Liddell <chris.liddell@artifex.com>
aac778af6233ee10e66c1ca3f902adf8b6566b60

Update release notes, changelog and couple of tweaks

gs/doc/History9.htm
gs/doc/News.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Use.htm


2014-03-18 11:41:44 -0700
Ray Johnston <ray.johnston@artifex.com>
20f8aebb83a88ca225b67c3bbf5e6dae936349b0

Fix Segfaults caused by 'vertical stripe' fix (f18fac0).

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.

gs/base/gxht_thresh.c


2014-03-17 13:07:37 -0700
Michael Vrhel <michael.vrhel@artifex.com>
7458c4b5eed25b49ba15dcb37b6dd2ec1d6f0089

Fix to turn of BPC when we are using the Gray_to_K ICC profile.

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.

gs/base/gsicc_cache.c
gs/devices/gdevtifs.c


2014-03-13 20:35:53 -0700
Ray Johnston <ray.johnston@artifex.com>
c23cde8b44a751a787636a7747b42b2da7911922

Fix sporadic vertical stripes with planar fast image thresholding (pkmraw)

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).

gs/base/gxht_thresh.c


2014-03-14 10:00:05 +0000
Chris Liddell <chris.liddell@artifex.com>
b65f4e9d7cdd32981680a5486e1c1c320ac4046e

Update version number, release and copyright dates.

gs/Makefile.in
gs/Resource/Init/gs_init.ps
gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/msvc.mak
gs/psi/winint.mak



Version 9.14 (2014-03-26)

This is the tenth full release in the stable 9.x series, and is primarily a maintenance release.

Highlights in this release include:

For a list of open issues, or to report problems, please visit bugs.ghostscript.com.

Incompatible changes

No recorded incompatible changes.

Changelog

2014-03-14 10:00:05 +0000
Chris Liddell <chris.liddell@artifex.com>
b65f4e9d7cdd32981680a5486e1c1c320ac4046e

Update version number, release and copyright dates.

gs/Makefile.in
gs/Resource/Init/gs_init.ps
gs/base/gscdef.c
gs/base/version.mak
gs/doc/API.htm
gs/doc/C-style.htm
gs/doc/Commprod.htm
gs/doc/DLL.htm
gs/doc/Deprecated.htm
gs/doc/Details8.htm
gs/doc/Details9.htm
gs/doc/Develop.htm
gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Fonts.htm
gs/doc/Helpers.htm
gs/doc/History1.htm
gs/doc/History2.htm
gs/doc/History3.htm
gs/doc/History4.htm
gs/doc/History5.htm
gs/doc/History6.htm
gs/doc/History7.htm
gs/doc/History8.htm
gs/doc/History9.htm
gs/doc/Install.htm
gs/doc/Issues.htm
gs/doc/Language.htm
gs/doc/Lib.htm
gs/doc/Make.htm
gs/doc/News.htm
gs/doc/Projects.htm
gs/doc/Ps-style.htm
gs/doc/Ps2epsi.htm
gs/doc/Ps2pdf.htm
gs/doc/Ps2ps2.htm
gs/doc/Psfiles.htm
gs/doc/Readme.htm
gs/doc/Release.htm
gs/doc/SavedPages.htm
gs/doc/Source.htm
gs/doc/Unix-lpr.htm
gs/doc/Use.htm
gs/doc/WhatIsGS.htm
gs/doc/Xfonts.htm
gs/doc/gs-vms.hlp
gs/doc/thirdparty.htm
gs/man/dvipdf.1
gs/man/font2c.1
gs/man/gs.1
gs/man/gslp.1
gs/man/gsnd.1
gs/man/pdf2dsc.1
gs/man/pdf2ps.1
gs/man/pf2afm.1
gs/man/pfbtopfa.1
gs/man/printafm.1
gs/man/ps2ascii.1
gs/man/ps2epsi.1
gs/man/ps2pdf.1
gs/man/ps2pdfwr.1
gs/man/ps2ps.1
gs/man/wftopfa.1
gs/psi/msvc.mak
gs/psi/winint.mak


2014-03-18 11:41:44 -0700
Ray Johnston <ray.johnston@artifex.com>
20f8aebb83a88ca225b67c3bbf5e6dae936349b0

Fix Segfaults caused by 'vertical stripe' fix (f18fac0).

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.

gs/base/gxht_thresh.c


2014-03-17 13:07:37 -0700
Michael Vrhel <michael.vrhel@artifex.com>
7458c4b5eed25b49ba15dcb37b6dd2ec1d6f0089

Fix to turn of BPC when we are using the Gray_to_K ICC profile.

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.

gs/base/gsicc_cache.c
gs/devices/gdevtifs.c


2014-03-13 20:35:53 -0700
Ray Johnston <ray.johnston@artifex.com>
c23cde8b44a751a787636a7747b42b2da7911922

Fix sporadic vertical stripes with planar fast image thresholding (pkmraw)

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).

gs/base/gxht_thresh.c


2014-03-14 09:40:22 +0000
Chris Liddell <chris.liddell@artifex.com>
7784cce96478d8bcec314e2dc8ecb3d3a849c37b

Add missing newline to memento error logging.

CLUSTER_UNTESTED

gs/base/memento.c


2014-03-11 08:31:32 -0700
Ray Johnston <ray.johnston@artifex.com>
c34097f6786f809826a30484e69684adf4915e9a

Fix output color values of pkm and pkmraw for GrayValues > 2.

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).

gs/devices/gdevpbm.c


2014-03-13 11:43:24 +0000
James Cloos <cloos@jhcloos.com>
685e801f7de04d087166e24b3373ab16dcca57bc

Bug 695080: fix typo in the pngmono device declaration

which caused pngmono to threshold rather than halftone at or above 150 dpi.

No cluster differences.

gs/devices/gdevpng.c


2014-03-13 13:47:56 +0000
Robin Watts <robin.watts@artifex.com>
303b48577602fb78df5fa40eb2de1d8e73245afa

Bug 695090: Solve memory overwrite with pkmraw in planar mode.

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.

gs/base/gdevprn.h
gs/base/gsdevice.c
gs/base/gxdevcli.h
gs/devices/gdevpbm.c


2014-03-13 11:19:11 +0000
Chris Liddell <chris.liddell@artifex.com>
f2fde5b9596318796f4ffd8d356116b1bb203ae3

Delete gs_fform.ps

If we want to cache forms, we should implement it properly.

CLUSTER_UNTESTED

gs/lib/gs_fform.ps


2014-03-13 10:53:49 +0000
Andreas Schwab <schwab@linux-m68k.org>
becedfbfdbd9dee77825ff245f48c0acc9d03252

Bug 695058: force correct struct ref_s size

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,

gs/psi/iref.h


2014-03-13 09:27:28 +0000
Chris Liddell <chris.liddell@artifex.com>
fdaa74efeebb753db1855eaf6a3a824ecbf1231e

Remove deprecated glyph mapping code.

No cluster differences.

gs/Resource/Init/gs_ttf.ps
gs/Resource/Init/gs_type1.ps


2014-03-12 17:18:25 +0000
Chris Liddell <chris.liddell@artifex.com>
fe0b8fcfb69246cbea99b85f453ed6c3c83f4592

Bug 693380: raise file path/name size limit to 4k

And move as many cases of paths allocated on the stack to heap memory as is
reasonable.

No cluster differences.

gs/base/gdevdevn.c
gs/base/gp.h
gs/base/gsdevice.c
gs/base/gsiodisk.c
gs/base/gsiomacres.c
gs/base/gsparam2.c
gs/devices/gdevtsep.c
gs/devices/vector/gdevxps.c
gs/psi/zfile.c
xps/xpsjxr.c


2014-03-13 10:35:33 +0000
Ken Sharp <ken.sharp@artifex.com>
83b6646951fee8fe153d14d3e2d7da75894b922a

PDF interpreter - fix multiple xref stream reading

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

gs/Resource/Init/pdf_main.ps


2014-03-12 21:25:39 -0700
Marcos H. Woehrmann <marcos@inches.(none)>
fadf80da45458db57cffdd90f1ed6c57aa31e51f

Fixed typo in Devices.htm.

gs/doc/Devices.htm


2014-03-12 15:52:34 +0000
Ken Sharp <ken.sharp@artifex.com>
94d070553225e0a8fb38157e081e9496dee8fde5

pdfwrite - remove deprecated code

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.

gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfp.c
gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdt.h
gs/devices/vector/gdevpdte.c
gs/devices/vector/gdevpdtf.h
gs/devices/vector/gdevpdtt.c
gs/devices/vector/gdevpdtw.c
gs/devices/vector/gdevpsds.c


2014-03-12 13:32:05 +0000
Ken Sharp <ken.sharp@artifex.com>
0598a205e9293fcaf548571624d93f534afa098d

Documentation - remove %ram% from the projects, as it is completed

gs/doc/Projects.htm


2014-03-12 09:33:24 +0000
Ken Sharp <ken.sharp@artifex.com>
8fad68f7c27f16cf78967443322bc4f638649f27

Update documentation for the pdfwrite family

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.

gs/doc/Devices.htm
gs/doc/Drivers.htm
gs/doc/Issues.htm
gs/doc/Ps2pdf.htm
gs/doc/Use.htm


2014-03-11 09:58:31 -0600
Henry Stiles <henry.stiles@artifex.com>
ee30f349671e3a23d666615f1648eab4a5290b4c

Abbreviated escape sequence improvement.

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.

pcl/pcparse.c
pcl/pcparse.h


2014-03-09 16:11:24 +0000
Chris Liddell <chris.liddell@artifex.com>
4c2f426905b4bf300f6b412024d71cd2be6276de

Remove GhostSVG.

No cluster differences.

Makefile
gs/configure.ac
svg/ghostsvg.h
svg/svg.mak
svg/svg_gcc.mak
svg/svg_msvc.mak
svg/svgcolor.c
svg/svgcolorlist.h
svg/svgdoc.c
svg/svgshapes.c
svg/svgtop.c
svg/svgtransform.c
svg/svgtypes.c
svg/svgxml.c


2014-03-09 15:54:06 +0000
Chris Liddell <chris.liddell@artifex.com>
8dacc34a50174bceac7786ce47466d9a71547955

Remove SVG writer from Ghostscript/GhostPDL

No cluster differences.

gs/Makefile.in
gs/configure.ac
gs/devices/devs.mak
gs/devices/vector/gdevsvg.c
gs/psi/msvc.mak


2014-03-06 11:57:00 -0800
Ray Johnston <ray.johnston@artifex.com>
22ebcc33db33aa15399a6836e48953736256eb41

Fix UseFastColor during clist playback.

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.

gs/base/gxclimag.c
gs/base/gxclist.h
gs/base/gxclrast.c


2014-03-08 20:29:30 +0000
Chris Liddell <chris.liddell@artifex.com>
f5457548e8162438a43b1aeb2040e34c001adaa4

Use malloc/free for lcms(2) shared lib build.

No cluster differences.

gs/base/gsicc_lcms.c
gs/base/gsicc_lcms2.c
gs/base/lcms.mak
gs/base/lcms2.mak


2014-03-07 17:00:28 +0000
Ken Sharp <ken.sharp@artifex.com>
58121374ed0d12aa38c872eb4d069b75ed5875d5

cast to silence a compiler warning

gs/base/gdevvec.c


2014-03-07 13:41:01 +0000
Ken Sharp <ken.sharp@artifex.com>
94c5ecffe4bf66cc91108d99a802c7c2d3b86e0b

PS interpreter, vector devices and pdfwrite - remove setdash limit of 11

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.

gs/Resource/Init/gs_init.ps
gs/base/gdevvec.c
gs/base/gdevvec.h
gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfg.c
gs/devices/vector/gdevpdfx.h


2014-03-05 09:47:52 -0800
Ray Johnston <ray.johnston@artifex.com>
4b16c45c3b834efb9ff9608360d3c053e91b1f23

Fix UseFastColor ignored for pages with transparency.

Found when researching problem from customer 532.

gs/base/gdevp14.c


2014-03-03 12:21:12 -0800
Ray Johnston <ray.johnston@artifex.com>
e63f9d066c001052f5594f09c3a3a59ff80d2d03

Fix problem with -d***Values=16 and bitrgb device.

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.

gs/devices/gdevbit.c


2014-03-05 08:54:56 +0000
Ken Sharp <ken.sharp@artifex.com>
b442d9a0c193d2d0114e72e1312e7bcc6e558aab

pdfwrite revert 3894e9c8a3ab125c82048da3bf81515500bb2da0


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.

gs/devices/vector/gdevpdf.c


2014-03-03 17:34:08 +0000
Robin Watts <robin.watts@artifex.com>
9a68412d171e5c998026a13dffcbc90ef9d477b9

Bug 695007: Fix problems with unicode chars in TEMP path.

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.

gs/base/gp_mswin.c
gs/base/winrtsup.cpp
gs/base/winrtsup.h


2014-03-04 10:24:47 +0000
Paul Gardiner <paulg-artifex@glidos.net>
f29e49d4b157a84b4793eda614447811b471c047

Fix pointer-usage bug in GetTempFileNameWRT

gs/base/winrtsup.cpp


2014-03-04 15:30:02 +0000
Ken Sharp <ken.sharp@artifex.com>
5b2adda7468241123d9559a98cd469f527dd7e3c

pdfwrite - do not apply the 'Default*' colour spaces

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.

gs/Resource/Init/pdf_main.ps


2014-03-04 09:25:18 +0000
Chris Liddell <chris.liddell@artifex.com>
2621110f37eb0c94a732578acd24634caec1c25b

Bug 694832: add an explicit flag for TTF notdef

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

gs/Resource/Init/gs_ttf.ps
gs/psi/zfapi.c


2014-03-04 09:49:52 +0000
Ken Sharp <ken.sharp@artifex.com>
0214c1b9c70cd41026e5cda707e582b32489a64c

remove a misleading comment

gs/devices/vector/gdevpdfu.c


2014-03-04 09:47:50 +0000
Ken Sharp <ken.sharp@artifex.com>
095ae57e266ee5168f042c26dd2e9d12273efb28

ps2write - fix missing %%BeginResource comment for FontFile objects

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

gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpdfx.h
gs/devices/vector/gdevpdtd.c


2014-03-03 14:14:19 +0000
Ken Sharp <ken.sharp@artifex.com>
649848310dd4f9400f63c685748e4f76344ba9d7

ps2write - fix a DSC comment

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.

gs/devices/vector/gdevpdtd.c


2014-02-27 11:28:57 +0000
Ken Sharp <ken.sharp@artifex.com>
f6abeac1c7ab3ee82523353b5373230e2607c0b9

pdfwrite - fix commit 1d1d22976ce5b5e96d862c404ca80f189476bfed

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.

gs/devices/vector/gdevpdf.c


2014-02-27 09:33:13 +0000
Ken Sharp <ken.sharp@artifex.com>
1d1d22976ce5b5e96d862c404ca80f189476bfed

pdfwrite - fix FastWebView for big-endian devices

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.

gs/devices/vector/gdevpdf.c


2014-02-26 10:38:02 -0800
Ray Johnston <ray.johnston@artifex.com>
30f2c656469f5930b1adc82454706743df68b0d7

Disable threshold array based image optimization for depth > 1.

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.

gs/base/gxicolor.c


2014-02-26 09:20:37 +0000
Ken Sharp <ken.sharp@artifex.com>
b53c81e38925d05b00ba9068aebc5fcbc519a685

ps2write - add a feature to customise the output for specific devices

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

gs/Resource/Init/gs_pdfwr.ps
gs/devices/vector/gdevpdf.c
gs/devices/vector/gdevpdfb.h
gs/devices/vector/gdevpdfu.c
gs/devices/vector/gdevpsdf.h
gs/devices/vector/gdevpsdp.c
gs/doc/Ps2ps2.htm


2014-02-23 09:46:21 -0800
Ray Johnston <ray.johnston@artifex.com>
77fce4a0cfd70b94a90a876cac0310fda1a969ee

Fix bug 695054, segfault caused by stale pointer in pattern-clist device.

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.

gs/base/gxpcmap.c
gs/psi/ilocate.c


2014-02-24 10:41:23 -0700
Henry Stiles <henry.stiles@artifex.com>
9990bdac31c018de33de2c09053b7e392a26304f

Fix Bug 694685 - Seg faults found by fuzzing in sfopen.

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.

pcl/pcsfont.c


2014-02-24 15:14:45 +0000
Ken Sharp <ken.sharp@artifex.com>
b6f8dba649f1be2ba5b9eb1d257f2052f7f2df28

Move ram file system memory to 'stable' memory

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.

gs/base/ramfs.c


2014-02-14 18:16:55 +0100
Simon Bünzli <zeniko@gmail.com>
863a1dfb328298a39871e49d218a16781fd42cba

Bug 694880 and bug 694904: prevent heap overflow in opj_j2k_add_tlmarker

Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

gs/openjpeg/libopenjpeg/j2k.c


2014-02-14 18:20:36 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
b17894bfedaf7b76edac15f681a4bd08717c65c0

Bug 694906: fix potential heap overflow in opj_t2_read_packet_header

Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

gs/openjpeg/libopenjpeg/t2.c


2014-02-18 09:36:09 +0000
Chris Liddell <chris.liddell@artifex.com>
7bd3739a888f70edf0270891782a88a547f5e829

Make the OpenJPEG callbacks static.....

and give them names more likely to be unique (just for debugging convenience).

No cluster differences.

gs/base/sjpx_openjpeg.c


2014-02-18 11:22:16 -0800
Ray Johnston <ray.johnston@artifex.com>
174cfd14e4d34a37cdcf2e0372bd0b4334310e8b

Fix pngalpha when PDF has transparency. Bugs 687630, 693024 and 695042.

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.

gs/devices/gdevpng.c


2014-02-15 13:54:07 -0800
Ray Johnston <ray.johnston@artifex.com>
b69da60516576d65ce1e27087dc358fef067ec58

Fix bug 695405. The psdcmykog device should not lock num_components.

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.

gs/devices/gdevcmykog.c


2014-02-11 08:07:04 -0800
Ray Johnston <ray.johnston@artifex.com>
3ebdb4596c8fa05656dc3987553217efe72b6b8d

Improve chunk allocator performance using a doubly linked list (bug 694985)

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.

gs/base/gsmchunk.c


2014-02-14 14:07:11 +0100
Tor Andersson <tor.andersson@artifex.com>
c5ad5b7f373313e9bc7b8991cc9e34506e627e0a

xps: Fix memory leaks in xpszip.c when handling errors.

Thanks to Norbert Janssen.

xps/xpszip.c


2014-02-14 10:12:28 +0000
Ken Sharp <ken.sharp@artifex.com>
1e93c580b175ac086db942c32fab055c6062e8e4

ps2write - more colour conversion work

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.

gs/devices/vector/gdevpdfc.c
gs/devices/vector/gdevpdfg.c


2014-02-13 14:49:42 +0000
Chris Liddell <chris.liddell@artifex.com>
edbed246ed67fcf24f854795f0d703bcb5d902fe

Bug 695027: use a consistent allocator in the FT server

There was some mixing of memory allocators in the Freetype integration code,
most of the code used the chunk allocator instance created during the
server initialization, but glyph data allocations were using the allocator from
the font object.

With two different FAPI servers in place, and with the right combination of
events, that could mean we'd lose the allocator pointer when destroying
the font object.

We're consistent in that all the memory allocations in the FAPI/Freetype code
are directed through the chunk allocator created for that purpose.

No cluster differences.

gs/base/fapi_ft.c


2014-02-13 14:47:18 +0000
Chris Liddell <chris.liddell@artifex.com>
979d824c9da11e9f366b1d90aed06f9449127997

Bug 695024: fix a typo

In the UFST integration code, we check if the Freetype server is available
and if it is, we punt any non-Microtype fonts to that. The typo is that
the Freetype server is named "FreeType" - the "T" was lower case.

CLUSTER_UNTESTED

gs/base/fapiufst.c


2014-02-13 15:14:49 +0000
Ken Sharp <ken.sharp@artifex.com>
4d349b1ae5852db20fcaca21b357748eb5360817

Bug #695034 Improve handling of word spacing with CIDFonta

Bug #695034 "Numbers and words are overlapping"

Word spacing does not apply to ti CIDFOnts, *except* for 1-byte mappings
where the byte 0x20 has word spacing applied to it.

The previous code attempted to check this by using a heuristic to determine
a single byte mapping in order to avoid adding more entries to the text
enumerator. unfortunately this file defeats that heuristic which meant
that it was necessary to calculate the number of bytes decoded when we
extract one character, and store that information so that the 'move'
routine can apply word spacing if required.

This shows two differences with a cluster run. Bug694436.pdf is very subtly
different, I'm assuming this is a progression. The Sumatra file
850_-_wrong_default_for_asian_fonts.pdf shows very significant improvements
with this commit.

gs/base/gxchar.c
gs/base/gxtext.h


2014-02-11 15:15:56 +0000
Chris Liddell <chris.liddell@artifex.com>
f4584b0e162a96ec143f0057de63c116e649e02b

Bug 695031: don't assume we can read a font file

When we scan system fonts, we were assuming fonts found would be in a format
Ghostscript understands. This is not necessarily the case.

So put the minimal parsing call to get the font's name in a stopped context,
so we can skip the file it's not an understandable format. And clean up the
stack in the event we try such a file.

No cluster differences.

gs/Resource/Init/gs_fonts.ps


2014-02-11 12:14:33 -0800
Michael Vrhel <michael.vrhel@artifex.com>
149b4b33c909c2d67c44c7a820f70209294bee76

Don't allow PS CIE color spaces to be used for transparency group color spaces.

The CIE color spaces are 1-way. In that they map from Device to CIE, not from
CIE to Device. A transparency group color space needs to be able to go both
directions. This fixes the regression 694774

gs/base/gsicc_cms.h
gs/base/gsicc_lcms2.c
gs/psi/int.mak
gs/psi/ztrans.c


2014-02-11 11:18:39 -0700
Henry Stiles <henry.stiles@artifex.com>
c22a604f0dc176fe1ae7545097e8a818e5d38309

Remove final remnants of deprecated CRD code.

pcl/pccid.c
pcl/pcl.mak
pl/pl.mak
pl/plsrgb.c
pl/plsrgb.h
pxl/pxgstate.c
pxl/pximage.c
pxl/pxink.c
pxl/pxl.mak
pxl/pxsessio.c


2014-02-11 08:07:04 -0800
Ray Johnston <ray.johnston@artifex.com>
c240594f3083158ab829cd121159879183bf49c8

Improve the debug 'cname' for chunk_mem_node_add similar to MEMENTO builds.

For normal builds use the caller's cname when allocating the chunk if the
object is in its own chunk. Previously this only was used for MEMENTO builds.
NB: MEMENTO builds put every object in a chunk, so the cname will always be
the caller's, never "chunk_mem_node_add".

gs/base/gsmchunk.c


2014-02-09 11:48:35 -0800
Ray Johnston <ray.johnston@artifex.com>
0eaf9e76f83eff5d0dd5eb1f8d9a5314b9ca44cd

Fix bug 694821. Ignore SeparationOrder with the psdcmykog device.

While this is a DeviceN device with some non-standard components
that can be painted using Separation or DeviceN colorspaces, this
device always outputs all 6 channels and can't deal with a subset
of the channels, so return an error (undefined) for SeparationOrder.
the separation_map remains constant to avoid color distortion if
SeparationOrder is used.

Also make sure that we never add separations (NO_AUTO_SPOT_COLORS)
from the get_color_comp_index procedure.

gs/devices/gdevcmykog.c


2014-02-07 18:13:52 -0800
Ray Johnston <ray.johnston@artifex.com>
a11848051b9abdbe2b750976018d4167a96d2fea

Fix some problems with SeparationOrder handling -- 29-07I.PS

Most importantly, when setting SeparationOrder parameters fail, we
need to use param_signal_error. Otherwise, even though the error code
is returned, the stack for setpagedevice would be missing the param
information and code that caused the error.

Also the num_spot and num_spot_changed were improperly updated when
ENABLE_AUTO_SPOT_COLORS allowed SeparationOrder to add separations.

gs/base/gdevdevn.c


2014-02-11 09:33:13 +0000
Ken Sharp <ken.sharp@artifex.com>
f176e516add62d3a943a755a9294c510c579655d

pdfwrite - fix a bug in the font embedding white list detection

While working on bug #695030 I ran across a bug in the font embedding
white list code. If the bisection of the list exactly hits the target string
exactly then the bisection would fail to find the string.

This commit special cases this and detects the string.

No differences expected.

gs/devices/vector/whitelst.c


2014-02-10 11:17:01 +0000
Ken Sharp <ken.sharp@artifex.com>
fac814792b42dfc2baafe84062ff986b7620cfe3

pdfwrite - alter the example pdfa_def.ps for PDF/A generation

The pdfa_def.ps file is incorrect with the new colour handling, and has long
had a problem with only handling Gray or CMYK.

Its no longer possible to retrieve the ProcessColorModel from systemdict,
we must now use the current device dictionary.

pdfa_def.ps now supports DevuiceGray, DeviceRGB and DeviceCMYK models.

No differences expected

gs/lib/PDFA_def.ps


2014-02-10 11:14:31 +0000
Ken Sharp <ken.sharp@artifex.com>
e17abc0e4574cdefd25032aa1003ff28503b5867

pdfwrite - new color code. Fix the emission of DeviceIndependent colours

Bug #694806 "chars and colors lost during PDF/A transformation"

If we used the same device independent (ICCBased) colour space, but a
different colour, we ended up not writing the new colour. This code fixes
that problem.

No differences expected

gs/devices/vector/gdevpdfg.c


2014-02-10 08:34:54 +0000
Ken Sharp <ken.sharp@artifex.com>
d59e1feb9545b399027907cb2d1a6855c524e0b4

PS interpreter - Fix rotation problem with EPSFitPage

Bug #695016 "Gradient eps file to pdf"

When fitting an EPS Bounding Box to a specified page size, the code looks
at the width and height of both the page and the EPS file, to see if the
EPS will fit 'better' by rotating it.

In this particular case the page is square, but there was no special case
for this, which mean that landscape pages wold be rotated twice, causing
the content to disappear.

This commit special cases square media sizes and does not attempt to rotate
the EPS, no matter what its orientation, as there is clearly no point in
doing so. This prevents the double rotation and resolves the problem.

Tested with landscape, portrait and square media and EPS files, in all
combinations.

No differences expected

gs/Resource/Init/gs_epsf.ps


2014-02-06 09:56:43 -0800
Ray Johnston <ray.johnston@artifex.com>
dc3770910997a17386c65eaa44e73cf7cf5e8339

Fix Windows display device -dDisplayFormat=16#a0800 regression.

Commit 82fc3bd change to msvc.mak removed setting the GX_COLOR_INDEX_TYPE,
and code in base/gxcindex.h set this incorrectly to 'ulong'. Add the code
that was removed and also add conditional compile to set this from
ARCH_SIZEOF_GX_COLOR_INDEX if it is not defined.

Also a