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.19 (2016-03-23)

This is the thirteenth full release in the stable 9.x series, and is mainly 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

Changelog

2016-03-17 17:12:41 +0000
Chris Liddell <chris.liddell@artifex.com>
9cf6bfee8d3c285e84d28437bff0747f601a7827

Bug 696665: add extra brackets for better compatibility

Some versions of autoconf enforce macro arguments to macros being bounded by
"[" and "[", others do not (the version I have does not), but we should use
them for best compatibility.

configure.ac


2016-03-17 10:21:16 +0000
Chris Liddell <chris.liddell@artifex.com>
d7e175bc49d8dcdc38af093cd744c62cb6451686

Remove some left debug code.

configure.ac


2016-03-17 10:06:14 +0000
Chris Liddell <chris.liddell@artifex.com>
a529498d1a52bbb91cca5e32512d6c49e665a004

Bug 696665: fix gs only install

I added dummy gpcl6 and gxps exe names to avoid a warning when building from a
gs only release archive. I neglected to add appropriate dummy install targets
for those, and that caused an error with "make install".

base/unixinst.mak


2016-03-15 08:17:34 -0700
Ray Johnston <ray.johnston@artifex.com>
3a089782b11699fe83c22a92544623a9c21e0c4a

Revert change to mswinpr2 device from commit 5cf300b

This caused us to ignore the printer specified by -s%printer%___
and always use the default printer if QueryUser was not specified

devices/gdevwpr2.c


2016-03-14 10:09:42 +0000
Chris Liddell <chris.liddell@artifex.com>
f75b4a8160d60039d850c581c7fbe18f1574bc39

Always have configure set gpcl6 and gxps exe names

But still skip adding them to the targets list if the source is not available.

This avoids a warning when building a Ghostscript only release archive.

configure.ac


2016-03-11 10:34:00 +0000
Chris Liddell <chris.liddell@artifex.com>
7f9c8fbce554eebdbda21f25d208c541355e177d

Update dates versions in docs etc

Makefile.in
doc/API.htm
doc/C-style.htm
doc/Commprod.htm
doc/DLL.htm
doc/Deprecated.htm
doc/Details8.htm
doc/Details9.htm
doc/Develop.htm
doc/Devices.htm
doc/Drivers.htm
doc/Fonts.htm
doc/Helpers.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/News.htm
doc/Projects.htm
doc/Ps-style.htm
doc/Ps2epsi.htm
doc/Psfiles.htm
doc/Readme.htm
doc/Release.htm
doc/SavedPages.htm
doc/Source.htm
doc/Unix-lpr.htm
doc/Use.htm
doc/VectorDevices.htm
doc/WhatIsGS.htm
doc/Xfonts.htm
doc/gs-vms.hlp
doc/thirdparty.htm
man/dvipdf.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
psi/int.mak
psi/winint.mak


2016-03-11 10:30:26 +0000
Chris Liddell <chris.liddell@artifex.com>
837d4dcaff85a7c96726caaeeb10b690aa6e18f1

Change product string for 9.19 RC1

base/gscdef.c


2015-09-30 14:57:38 +0100
Chris Liddell <chris.liddell@artifex.com>
50efb7307dab9df334ad45acdfbe83bf2f3ffba3

Tweak changelog for 9.18 release

doc/History9.htm


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

Add words to 9.18 release notes

about the revised directory structure, build and executable names

doc/History9.htm
doc/News.htm


2016-03-10 11:16:51 +0000
Robin Watts <robin.watts@artifex.com>
e980dc6f1356e659254974838a94e16d6506af44

Bug 696640: Fix stack overflow in memento.

Windows backtraces are limited to 63 levels. Linux ones can be
any size. I'd mistakenly overflown the buffers in the linux
case.

While we're fixing that, improve the code to require less copying.

base/memento.c


2016-03-10 04:32:36 -0800
Robin Watts <robin@peeves.(none)>
596e5b0bb0bc470cc177e5dca35bc69de7c664d1

Memento: Fix linux memento builds.

The fix for windows builds broke linux due to -DMEMENTO
being in CFLAGS on windows, and GENOPT on configured builds.

Also tidy the code to avoid things detected by the more picky
compiler on Linux.

base/lib.mak
base/memento.c
base/memento.h


2016-03-09 23:44:10 +0100
Vincent Torri <vincent dot torri at gmail dot com>
80c9d7671534c51e7239e0f7c5ca8a67a43c842d

Bug 696641 - support build with MSYS2

uname in MSYS2 terminal reports MSYS_NT-6.1, so add MSYS* to all the "case"
in configure.ac.

Note: cygwin terminal's uname reports CYGWIN_NT-6.1

configure.ac


2016-03-10 11:11:35 +0000
Robin Watts <robin.watts@artifex.com>
f79377b1a156c40ff304a3d161b54865e35f23a3

Fix windows memento builds.

So, windows.h cannot be used unless Microsoft extensions are enabled.
How dumb is that?

base/lib.mak
base/memento.c


2016-03-09 10:49:26 +0000
Chris Liddell <chris.liddell@artifex.com>
0e787367c085457a106890ce4c2068dccee86933

Removing hacky HAVE_LIBDL stuff for memento....

Replace with proper configure setting.

base/lib.mak
configure.ac


2016-03-09 15:36:50 +0000
Chris Liddell <chris.liddell@artifex.com>
4f0dd9dd527451c1a2b625c667c4bf0a131e9ce3

Properly fix building with shared OpenJPEG.

configure.ac


2016-03-07 06:26:25 -0800
Robin Watts <robin@peeves.(none)>
0d4339898f181acb77bc4cc2a419f38cf4727b4e

Memento: Store/display backtraces with blocks.

If built with MEMENTO_DETAILS (on by default), we store the
backtrace on every event that affects a block.

Memento_details(address) will display the events that affected
a block (typically malloc, {realloc}*, free), including the
backtrace at each point.

Windows and linux use different mechanisms for this. Windows
loads a DLL and calls windows specific functions - no extra
libraries are required.

Linux also loads a shared object (libbacktrace.so). This is not
present on all platforms, so on platforms where it is not available
we just get addresses. These can be converted using addr2line
(unless ASLR is enabled).

base/lib.mak
base/memento.c


2016-03-05 15:25:01 -0800
Chris Liddell <chris.liddell@artifex.com>
8692d5e0996ab3995e1d02efc3d0ca145ccced71

Fix psdcmyk handling of output to /dev/null or equivalent.

The PSD file format does not support multiple images (pages) in a single file,
so we spot such an attempt (by checking whether or not the output file string
has a "%d" in it) and throw an error.

This also throws an error if an attempt is made to write multiple pages to
/dev/null (as is done for performance testing).

Since it really doesn't matter if the output "file" is invalid when we're just
discarding the data, spot this case, and allow multi-page files to run
without error.

devices/gdevpsd.c


2016-03-05 14:34:20 -0800
Chris Liddell <chris.liddell@artifex.com>
49852e6060f63b3feaa15157ee27644eb1d1b8c9

Remove pointless (Mac classic only) setenv()

base/gp_macio.c


2016-03-05 13:12:46 -0800
Chris Liddell <chris.liddell@artifex.com>
381bc0729b96f47ebe1ee5d49cb603d688361291

Bug 696610: add pngmonod into the configure build

configure.ac


2016-03-05 20:01:04 +0000
Ken Sharp <ken.sharp@artifex.com>
cd3c6a408bd64e515a46cfb4bdbbb7e42d0b943e

Now that we have contatced the original author and received written
copyright assignment, update the copyright headers for the RAM file
system code.

base/gsioram.c
base/ramfs.c


2016-03-04 16:18:23 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
284cd94895a68c0d558c2b9d5325b77cce90f807

Document psdcmykog device.

doc/Devices.htm


2016-03-04 15:15:07 -0800
Ray Johnston <ray.johnston@artifex.com>
5cf300b7347c509f7530f5f9e7d6b0b997581f33

Fix bug 696559, default to QueryUser=3 so that printer properties are correct.

Thanks to Nikolaus Kreuzer for suggesting this method. It now seems to work
as requested and as I would expect.

devices/gdevwpr2.c


2016-03-04 13:56:09 -0800
Chris Liddell <chris.liddell@artifex.com>
53ee0f551785f8ae3689f8cef77b48d76ba6340f

Bug 696518: remove long deceased pcx2up device.

base/unix-gcc.mak
configure.ac
devices/devs.mak
devices/gdevp2up.c


2016-03-04 14:04:19 -0800
Ray Johnston <ray.johnston@artifex.com>
ab70c0f9de22ff012d5d73f9b2aab9ae724a743b

Fix bug 696515 -- the snowflak.ps did not handle page size < 250 points.

examples/snowflak.ps


2015-10-14 10:26:16 -0700
Ray Johnston <ray.johnston@artifex.com>
449604f1a31067fa8e32227c3ce234b55b8cf143

Get rid of code allowing for no 12 bit or 16 bit image support.

The gxino12b.c and gxino16b.c modules were no longer used and the
graphics library always supported 12 and 16 bit images, so remove
the leftover code allowing for these to be build time options.

This was causing false positives with helgrind since the procs
were being set into the two-dimensional array at run time. The
unpackicc_16 had this same code even though there was no method
or check for non-support.

base/gxi12bit.c
base/gxi16bit.c
base/gximage.h
base/gximdecode.c
base/gxino12b.c
base/gxino16b.c
base/gxipixel.c
base/gxiscale.c
base/gxsample.h


2016-03-04 19:17:10 +0000
Ken Sharp <ken.sharp@artifex.com>
f71dca797cbcdf0430fd8009c6c517baed62b4cb

pdfwrite - FunctionType 2 C0 and C1 are optional

Bug #696626 " A PDF file causes ps2pdf crash"

The code fro serialising a Type 2 function was assuming that C0 and C1
were valid (validated by the interpreter) and always present. In fact
both of these are optional. We were attempting to dereference a NULL
pointer.

Altered the type 2 serialise code to write the default values if either
or both of C0 and C1 are not present.

No differences expected.

base/gsfunc3.c


2016-03-04 18:50:01 +0000
Ken Sharp <ken.sharp@artifex.com>
a90ca3d4c30339f93b1e595ee81d08f1ca7174e4

ps2write - suppress an address sanitizer warning for MM fonts

ps2write does not currently handle Multiple Master fonts well, we know
this there is an open enhancement for it. We do have a hacky work-around
which turns the MM OtherSubrs into regular OtherSubrs using the blended
values.

This doesn't work when the font program uses constrcuts such as ' x y div'
in order to create floating point values. This could mean that we did
not have as many paramters as expected on the stack as are required for
a given MM OtherSubr, leading to us indexing off the bottom of the
stack.

This meant we were using random values, but this didn't really matter
as the data is always going to be wrong. However the address sanitizer
complains about this.....

In this commit if we would underrun the stack we just write a 0 instead

devices/vector/gdevpsf1.c


2016-03-04 15:40:30 +0000
Ken Sharp <ken.sharp@artifex.com>
8175c6993efa8637ac39a050cc0696a19214abe1

pdfwrite fix address sanitizer complaint.

When checking a font name to see if its a URW replacement for a base 14
font we were doing a memcmp with the length of the candidate name.

If that length exceeded the length of the URW name then we were in
effect comparng against part of the next name (or random bytes off the
end of the table.

Of course this is harmless except in the highly unlikely case of the end
of the table not being followed by more data bytes. But the address
sanitizer complains. So we now compare the length of the two strings
first.

devices/vector/gdevpdtb.c


2016-03-03 15:50:48 -0800
Robin Watts <Robin.Watts@artifex.com>
b40526038481dd3158331df6c42c47654e02c3ab

Memento: Speed improvements.

Avoid searching the linked list of blocks in order to remove a
block by moving to a doubly linked list. This can be done
without increasing the amount of memory in use by making better
use of the 'parent' pointer that is only used when displaying
nested blocks.

Also store magic values in the 'child' and 'sibling' pointers
(again only used when displaying nested blocks) so that we
can quickly verify that a block is real before doing too much
with it.

Those changes drastically reduce the time required for
MEMENTO_LEAKONLY runs (now the same order of magnitude as non
memento runs).

Normal memento runs are still very slow when the numbers of
blocks increase due to the paranoid checking taking time.

To ameliorate this a bit, we try 2 other things.

Firstly, we optimise the searching of blocks by making use of
int aligned tests. This still doesn't make much difference.

Secondly, we introduce a new mechanism for the 'paranoia'
levels. If a negative number is given for the paranoia level
(say -n) then we first perform our overwrite checks after n events.
We next test after 2n events, then 4n, then 8n etc.

The new default paranoia level is set to be -1024.

This makes a huge difference, and brings normal memento runs
down to be comparable with debug runs.

base/memento.c
base/memento.h


2016-03-01 16:58:43 +0000
Robin Watts <robin.watts@artifex.com>
83055a87a2ce1910ede8cdfe722766a8a4c13d55

Bug 696616: Move antidropout downscaler functionality.

The current code globally enables use of the antidropout
downscaler on all halftoned devices (unless they override
the gxdso call), when interpolation is enabled.

We now introduce a -dAntidropoutDownscaler option that
defaults off. That sets a bit in dev.color_info that is
used to control the option. This decouples it from
interpolation.

base/gdevdflt.c
base/gsdparam.c
base/gxdevcli.h


2016-03-01 17:20:04 +0000
Chris Liddell <chris.liddell@artifex.com>
7a3d6527825a79471e93b723bbd2e6dad0c61b64

Fix up some broken/out of date links

Marcos did some cleanup identifying broken links, based on his work, I've fixed
the broken links, and removed those to files that no longer exist.

doc/Develop.htm
doc/Drivers.htm


2016-03-01 15:04:38 +0000
Robin Watts <robin.watts@artifex.com>
579f5891d69bcb057f27e44d49bf686d64a9f2ee

Bug 696620: Avoid rangecheck errors in tiff devices.

Only write downscaler options if we will read them.

devices/gdevtifs.c


2016-02-29 15:33:23 +0000
Ken Sharp <ken.sharp@artifex.com>
3c4c85ae660c22d8442c3a9ea17bbc295f2a2fac

high level forms - account for flipped/mirrored CTM

For high level forms support, if the device requests a specific CTM be
applied we calculate a clip path which includes negative co-ordinates
to ensure that a translated form won't be erroneously clipped to the
page.

When doing this, we need to account for the CTM when the form is executed
potentially being flipped or mirrored (or both!)

No differences expected.

psi/zform.c


2016-02-28 09:02:43 +0000
Ken Sharp <ken.sharp@artifex.com>
5d15322e32f85f9b4d9fbebd19148d7a95428adf

pdfwrite - silence Coverity warning

Change an indent to silence Coverity.....

devices/vector/gdevpdfi.c


2016-02-26 09:38:46 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
f682ba02caa1cb974e475cc387efce1e04d901f5

Fixed links in Develop.htm and Drivers.html.

Some referenced files appear to no longer exist, I've left those in
the documentation but commented out with a 'missing' notation.

doc/Develop.htm
doc/Drivers.htm


2016-02-25 14:23:02 +0000
Robin Watts <robin.watts@artifex.com>
b94ac333a172558441726e47f257cb26a3b6f924

Bug 696615: Solve incorrect copy_alpha of hl_color

The code that expanded alphas to 8 bits was incorrect for the
4 bit case.

base/gdevdbit.c


2016-02-25 10:56:35 +0000
Robin Watts <robin.watts@artifex.com>
65b72cece8e2462fd787e8d54d9f990327a061ac

Fix dropped error code in clist code.

base/gxclrect.c


2016-02-25 11:47:27 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
8f69cda3004976da8da5c23ca86fdb62086ec508

Another set of broken doc links.

doc/WhatIsGS.htm


2016-02-25 11:30:19 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
09ca513fbcd7e3a843cc2690dd9dadecfd50bad9

Fixed another broken link in doc.

doc/WhatIsGS.htm


2016-02-25 11:18:26 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
4d954bfd6b0bb8e3d7400ca1f5e4b6494ec91384

Fixed broken links in doc/*.htm.

There are still broken links in doc/Psfiles.htm, doc/Develop.htm, and
doc/Drivers.htm caused by the files they refer to having been moved to
a different directory. Those will be fixed in a separate commit.

doc/Devices.htm
doc/Language.htm
doc/Readme.htm
doc/Use.htm


2016-02-24 20:09:58 +0000
Robin Watts <robin.watts@artifex.com>
bcf738d762ef65e16f060d57ea15824f1f6bd57c

Bug 696611: Avoid imagemask interpolation errors with pbmraw.

pbmraw (deliberately) doesn't know how to copy_alpha. We never
call copy_alpha when going to pbmraw direct because of this, but
the clist wrapping defeats our detection. This results in an
error.

Tests enabling copy_alpha for pbmraw show a degredation in render
quality, so instead, we just disable all imagemask interpolation
when going to halftone devices.

base/gxiscale.c


2016-02-24 15:56:23 +0000
Robin Watts <Robin.Watts@artifex.com>
036710b85c9e1b08ea0c0c7d5e2ad0734a1460eb

Add some 'sanitize' targets to the Makefile

These build with address sanitizer enabled.

These hackily set the '-i' flag in the recursive calls to make
to sidestep the problems with genconf/mkromfs leaking at the
moment. These issues will be fixed and the -i removed.

Makefile.in
base/unix-end.mak


2016-02-24 17:51:29 +0000
Robin Watts <Robin.Watts@artifex.com>
dd65a40fa66835646972b665f352498c696557a1

Bug 696609: Fix operation in non 24bpp modes.

I had the depth checks in blank_unmasked_pixels wrong.

base/gxpcmap.c


2016-02-24 16:34:35 +0000
Robin Watts <Robin.Watts@artifex.com>
1386dbd1ad0bef6b6264e198162d0b7c9abfce54

Bug 696603: Quieten address sanitiser.

mem_mono_copy_mono includes some clever code that reads
16 bits at a time and shifts to do fast mono copies of
unaligned data. This can result in overreading the end
of data by a byte, but never so far as to cause address
overflows due to the granularity at which data can be
allocated.

The 'overread' data is never actually used.

The simple fix here just extends the source block by
a byte to avoid error sanitizer complaining. Valgrind
correctly does not flag this.

pcl/pcl/pcbiptrn.c


2016-02-24 13:45:20 +0000
Robin Watts <robin.watts@artifex.com>
628f3de2f47e46d2b56fa9f6bfd7b7a479d8b10e

Bug 699613: gs leaves temp files in GS_NO_UTF8 windows builds.

Adopt Cecil Hornbakers patch to solve this. Many thanks!

base/gp_mswin.c


2016-02-24 12:30:28 +0000
Robin Watts <robin.watts@artifex.com>
8fa7be62354e783551661cbda24b56deb3e67f1f

Remove unused variables/conditions from gdevpdf.c

Spotted while debugging bug 696612.

Various places in the code do:

{ int j, code = 0;
for (j = 0; j < n && code >= 0; j++)
{
STUFF
}
}

which is a perfectly reasonable thing to do - except for the
facts that: 1) STUFF never alters the value of code, and 2) even
if STUFF did alter the value of code, we never check the value
and return it.

Accordingly, I've just removed the references to code.

devices/vector/gdevpdf.c


2016-02-24 12:31:17 +0000
Robin Watts <robin.watts@artifex.com>
e2a848f1157fdecab41165ac790394202e13d9d0

Bug 696612: Swallow rangecheck errors in psf_check_outline_glyphs

At the closedown of the file, we run through and write out fonts.
As part of this process, we check the glyphs in the font. If any
of the glyphs come back as bad, we abort the whole process.

Previously we ignored any errors here, and my change to make us
not ignore errors in the pdf_close routine caused this regression.

After discussion with Ken and Chris, the correct fix, I believe,
is to continue to catch and honour all errors in pdf_close, but
to explicitly swallow certain errors lower down.

Chris suggested, and I agree with him, that simply swallowing
the rangecheck error in psf_check_outline_glyphs would be an
acceptable fix (for now at least).

I am leaving the bug open and passing it to Ken so that he can
double check this area in more detail at his convenience.

devices/vector/gdevpsfu.c


2016-02-23 19:53:31 +0000
Robin Watts <robin.watts@artifex.com>
636bb0bce0ece581f3004915e2c10c79c00439eb

Bug 695180: Maintain antialias levels into pdf14 devices.

When creating a pdf14 device, ensure that the antialias level
of the pdf14 device matches that of the underlying device.

This prevents antialiasing getting lost when the clist kicks
in for transparency.

base/gdevp14.c


2016-02-23 18:57:28 +0000
Robin Watts <Robin.Watts@artifex.com>
b85daf6bdb43c09fe92ac9c319c9fea5b012989a

Bug696540: Fix pattern accumulator initialisation

When we create a pattern accumulator the bitmap contents are
initially undefined. We then draw a rectangle over them to set
them to known values.

Unfortunately the code that writes this bitmap does not check
for the ctm being sane, so in some cases the initialisation
can fail.

This shows up as indeterminisms in the alpha blending.

The simple fix is to set the ctm to the identity matrix before
rendering.

base/gxpcmap.c


2015-12-28 17:35:10 +0000
Robin Watts <Robin.Watts@artifex.com>
7aed42f6e9f1f0bf09dde46d7004d517faed0d2e

Fix potential valgrind warning.

We don't have an example file for this, but this was spotted
during investigations into Bug 693784.

We can overrun by 1 pixel for odd length rows. When we overrun
we read the lower 4 bits of a byte, and those may be undefined.

Simply make PACIFY_VALGRIND blank these bits before we start.

devices/gdevpbm.c


2016-02-23 14:59:25 +0000
Robin Watts <robin.watts@artifex.com>
89f02bdede0a2a46ee8937e6138b0f8905b524f5

Bug 696609: Fix x11alpha regressions.

The changes to pattern_accum_get_bits_rectangle were causing
a lack of output.

This was due to the call to the underlying get_bits_rectangle
returning with a pointer to the data (rather than supplying
a copy of it). The blank_unmasked_bits call would then fail
as it could not alter the underlying data safely.

The fix is simply to remove the bit that allows a copy of the
data to be submitted from the options before calling, thus
ensuring that we can operate on a copy.

base/gxpcmap.c


2016-02-22 09:09:50 +0000
Ken Sharp <ken.sharp@artifex.com>
ece091d02c69174fb96dc6b02df9e30f9c964461

pdfwrite - fix a colour conversion crash

Discovered while working on an unrelated problem. If we had set the
CompatibilityLevel to < 1.3 and encountered a CIEBased colour space in
the input file, then we unconditionally return a 'convert' result
because we cannot embed an ICC profile in such an old PDF version.

However we did not update the 'pcs_orig' argument, and later tried to
use it, resulting in a NULL dereference.

No differences expected.

devices/vector/gdevpdfi.c


2016-02-19 09:29:58 +0000
Robin Watts <robin.watts@artifex.com>
e636c3958126201c858d394d05c135bcd90cf3df

Avoid another undefined data return case.

Attempting to getbits from any pattern accumulator without a
color plane cannot work. Give an error.

base/gxpcmap.c


2016-02-19 09:29:51 +0000
Robin Watts <robin.watts@artifex.com>
c480ef1b2d0a9ede3df1d6fc64e6f305e378d3d7

Fix possible undefined variable access.

I messed this up while refactoring.

base/gxpcmap.c


2016-02-18 19:37:05 +0000
Robin Watts <robin.watts@artifex.com>
cc6adc3f223ac00778e6236b687ab624cadb4445

Ensure pattern_accumulator_get_bits returns defined values.

When reading bits from the pattern_accumulator, if it has a mask
then blank the masked bits as otherwise the values are undefined.

base/gxpcmap.c


2016-02-18 17:33:18 +0000
Robin Watts <robin.watts@artifex.com>
f63ceefb7fc70cc7ccce9e4ae4221c5b5ca00100

Update Acrobat2Tiff to hopefully work with 10/11/DC too.

toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vb


2016-02-18 16:31:31 +0000
Robin Watts <robin.watts@artifex.com>
9bb42182c7637e11bc2939fb359ab79365594202

Update devices to return errors using return_error.

contrib/gdevcd8.c
contrib/gdevdj9.c
contrib/gomni.c
contrib/japanese/gdevdmpr.c
devices/gdevcdj.c
devices/gdevcmykog.c
devices/gdevfpng.c
devices/gdevmac.c
devices/gdevmac.h
devices/gdevmswn.c
devices/gdevmsxf.c
devices/gdevos2p.c
devices/gdevpng.c
devices/gdevsvga.c
devices/gdevtifs.c
devices/gdevtsep.c
devices/gdevupd.c
devices/gdevwddb.c
devices/gdevwdib.c
devices/gdevwpr2.c
devices/gdevwprn.c
devices/gxfcopy.c
devices/vector/gdevpdf.c
devices/vector/gdevpdfg.c
devices/vector/gdevpdfi.c
devices/vector/gdevpdfm.c
devices/vector/gdevpdfo.c
devices/vector/gdevpdfr.c
devices/vector/gdevpdfu.c
devices/vector/gdevpdfx.h
devices/vector/gdevpdtc.c
devices/vector/gdevpdte.c
devices/vector/gdevpdtt.c
devices/vector/gdevpsdi.c
devices/vector/gdevpsdp.c
devices/vector/gdevpsf1.c
devices/vector/gdevpsf2.c
devices/vector/gdevtxtw.c


2016-02-17 17:50:19 +0000
Robin Watts <robin.watts@artifex.com>
c00965e4c05f08ec000303d53942e846187eed1a

Improve logability of errors.

Ensure that we always return_error(gs_error_blah) rather than just
return gs_error_blah.

base/fapi_ft.c
base/fapibstm.c
base/fapiufst.c
base/gdevabuf.c
base/gdevdbit.c
base/gdevdflt.c
base/gdevdrop.c
base/gdevm24.c
base/gdevnfwd.c
base/gdevp14.c
base/gdevprn.c
base/gdevsclass.c
base/gdevvec.c
base/gp_mswin.c
base/gp_wsync.c
base/gsargs.c
base/gsdparam.c
base/gsfunc0.c
base/gsicc_cache.c
base/gsicc_lcms2.c
base/gsicc_manage.c
base/gsiodisk.c
base/gsioram.c
base/gsiorom.c
base/gslibctx.c
base/gsovrc.c
base/gxccman.c
base/gxcht.c
base/gxclthrd.c
base/gxcmap.c
base/gxdhtserial.c
base/gxdownscale.c
base/gxht.c
base/gxpageq.c
base/gxshade.c
base/sjbig2_luratech.c
base/sjpegc.c
base/sjpx_luratech.c


2016-02-18 16:15:33 +0000
Robin Watts <robin.watts@artifex.com>
18af3c05dc3774512529436fd41d953fa24b34f8

Avoid interpolating imagemasks in pattern accumulators.

To interpolate imagemasks, we need to do a copy_alpha operation.
These are impossible to do well on a pattern accumulator due to
the 1bpp alpha plane.

As such the best thing we can do is to sidestep the problem.

base/gxipixel.c
base/gxpcmap.c


2016-02-17 16:23:40 +0000
Robin Watts <robin.watts@artifex.com>
a08a24751a672a21972d3888d651dacae054888e

MSVC Solution: Add gdevsclass.{c,h} to the solution.

windows/ghostscript.vcproj


2016-02-18 10:49:11 +0000
Ken Sharp <ken.sharp@artifex.com>
ccca669b1a1bf97fc1b778dd6f768b3a71d9dfbc

Silence a compiler warning

accidentally left a debugging variable in place

devices/vector/gdevpdfg.c


2016-02-18 10:29:58 +0000
Ken Sharp <ken.sharp@artifex.com>
32e721e9e4c21f0a843ada824d17ac465f21ac4b

pdfwrite - don't render shadings if we don't need to convert base space

Bug #690125 "Gradient / Fill Pattern Conversion Issues"

Since the change to ICC colour management, the check to see whether we
could support the base space of a shading was incorrect, it checked the
strategy against 'ICC' instead of the real base space of the pattern.

This change checks the actual base space of the pattern before deciding
whether we can handle it.

Although this 'fixes' this bug its not the whole story, I want to alter
the functions so that they can be sampled and generate a different colour
space if we are doing colour conversion, rather than rendering the
shading.

No differences expected.

devices/vector/gdevpdfg.c


2016-02-17 11:30:34 -0700
Henry Stiles <henry.stiles@artifex.com>
19755c9a944bc257c936345742e3dc18703ca17f

Bug #696592 Macro and duplex state interaction.

The duplex page state was not being properly maintained during overlay
macro execution. Thanks to Norbert Janssen for discovering and
analyzing this problem.

pcl/pcl/pcjob.c


2016-02-16 18:03:30 +0000
Robin Watts <robin.watts@artifex.com>
80f7b13626dbf60275a8ea2d4ae16336832cfec5

Further indeterminism fixes for halftoning.

Yesterday I changed the halftone code to calculate the dest_width
etc from the bresenham. Now it turns out that the bresenham is
tweaked slightly in some cases, so that the 2 places where it
was being used to calculate dest_width were still getting
different results.

This commit rearranges the code so that the same bresenham values
are used consistently, and so should give us proper matches.

base/gxht_thresh.c
base/gxicolor.c
base/gximono.c


2016-02-16 17:09:14 +0000
Robin Watts <robin.watts@artifex.com>
d282b4d03e8dacfea9efb2867cc8cedb2f154a0f

Bug 696594: Fix timeouts in cluster.

Thanks to Ken for spotting this one.

I'd neglected to update x in the landscape code, resulting in
infinite loops.

base/gxiscale.c


2016-02-16 12:07:03 +0000
Ken Sharp <ken.sharp@artifex.com>
1a7c20c004643d38b3eb8fb9898927c351a7a63d

pdfwrite - force non-Identity CMap emission when creating PDF/A

Bug #696547 "Converting to PDF/A using -dPDFACompatibilityPolicy=2 returns without error but produces invalid PDF/A files"

The third and (so far) final bug in this collection.

PDF/A mandates that all CMaps except Identity-H and Identity-V must be
embedded in the PDF file. Previously we were not doing that for the
'standard' CMaps.

This commit forces the emission of all CMaps except Identity ones when
producing PDF/A output.

No differences expected

devices/vector/gdevpdtc.c


2016-02-15 19:31:33 +0000
Robin Watts <robin.watts@artifex.com>
656b19ddd19772c5c3fd40817d6532c853494d68

Fix unused variable.

Leftover from previous code rework.

base/gxht_thresh.c


2016-02-15 18:15:12 +0000
Robin Watts <robin.watts@artifex.com>
92b88a1aefcd3410d8378bac8e92122622b7c80a

MSVC: Add targets for debugging.

Add output paths to the projects so that the debugger knows where
to find the executable for each different build configuration.

windows/ghostpcl.vcproj
windows/ghostpdl.vcproj
windows/ghostxps.vcproj


2016-02-15 16:57:46 +0000
Robin Watts <robin.watts@artifex.com>
4a8525ca93d7be6091f38ee68f4dbefa540158fa

Bug 696323: Fix indeterminism in thresholding code.

The thresholding code calculates the destination width of the
image lines in one way, then fills the data based on the
bresenham. It is possible for the destination width calculated
to not match that given by the bresenham, in which case
undefined data can be plotted.

The fix here is simply to calculate the destination width from
the bresenham, so it will exactly match the actual data we get.

base/gxht_thresh.c
base/gxht_thresh.h
base/gxicolor.c
base/gximono.c


2016-02-15 15:08:38 +0000
Robin Watts <robin.watts@artifex.com>
0d66d291c29a7c34a4ba32060af7e9f4f1870a6c

Add "NoInterpolateImagemasks" device param.

Rather than relying on the 'HighLevelDevice' device param, instead
look at a new 'NoInterpolateImagemasks' param.

base/gdevvec.c
base/gxiscale.c


2016-02-12 14:12:41 +0000
Robin Watts <robin.watts@artifex.com>
5a9269c17c036606f13f257f7ee5580a3a191530

Bug 696132: Reapply previous work.

Previous commits in this area went in piecemeal and caused lots of
diffs which were then fixed etc. By committing here in one go, we
hope to get saner results from the tests which we can have more
confidence in.

A summary of the changes:

1) Introduce a mechanism so that we can know whether we are in
a pattern accumulator or not.

2) When plotting an othogonal image use that mechanism to detect
whether we are in a pattern accumulator. If we are, then grid
fit the image.

3) If we are in a pattern accumulator and we are downscaling an
image, then interpolate it. This avoids nasty dropouts with
halftoned images that can (due to nearest neighbour plotting)
suddenly change massively in appearance.

base/gxdevsop.h
base/gxipixel.c
base/gxpcmap.c


2016-02-15 15:22:46 +0000
Ken Sharp <ken.sharp@artifex.com>
2959218b70dcb95765e458073195b4a9baa65be9

graphics library - make vector devices implement the correct spec_op handler

Devices based on gdevvec were not properly having the spec_op method
assigned to the gdevvec spec_op handler if the device didn't handle
spec_op itself.

Ideally this would be done by having the device prototype being fully
populated, but the number of device methods makes that impractical.
Instead, if the method is NULL or the gx_default method, replace it
with the gdevvec one.

This already works for devices based on gdevprn as a simlar hack is
performed in gx_default_create_buf_device

No differences expected

base/gdevvec.c


2016-02-15 10:21:57 +0000
Ken Sharp <ken.sharp@artifex.com>
343e3ed65423135a1f25ba1b5d52f45707c17c70

documentation - make it clearer the NumRenderingThreads has no effect on pdfwrite

Unfortunately nothing can be done about the 'cargo cult' approach to
command line parameters which most people seem to use, but we should try
and make it clear in the documentation, on the off-chance that someone
actually reads it.

doc/Language.htm
doc/Use.htm


2016-02-12 10:14:50 -0800
Ray Johnston <ray.johnston@artifex.com>
38e501dcddb6a15e9d2e41ae534d398942f9e839

Move Acrobat2TIFF from pcl/tools to toolbin (it is not PCL related)

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
toolbin/Acrobat2Tiff/Acrobat2Tiff.sln
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vb
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff.vbproj
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.Designer.vb
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Application.myapp
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/AssemblyInfo.vb
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.Designer.vb
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Resources.resx
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.Designer.vb
toolbin/Acrobat2Tiff/Acrobat2Tiff/Acrobat2Tiff/Settings.settings
toolbin/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.exe
toolbin/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.vshost.exe
toolbin/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Acrobat2Tiff.xml
toolbin/Acrobat2Tiff/Acrobat2Tiff/bin/Release/Interop.Acrobat.dll


2016-02-07 09:07:53 -0800
Ray Johnston <ray.johnston@artifex.com>
5c83e97e4c1216d7e3f67c7001a2513b0c1b9b45

Remove OMIT_SAVED_PAGES_TEST that was left in plmain when removed from gs

pcl/pl/plmain.c


2016-02-12 14:04:11 +0000
Robin Watts <robin.watts@artifex.com>
6c080667d88ba604a7033da1e507e2c39fa0fca2

Revert Bug 696132 work, in order to start from scratch.

Revert:

1) "Bug 696132/696572: Continued "pattern gap" work - interpolate"
commit 80693d83612e03b26a5006b74296c6e9f11779da.

2) "Bug 696132/696572: Continued "pattern gap" work - tidying."
commit 1b843b1a6adca2f0245af8049b7c5d6d8f00ae5d.

3) "Fix gridfitting images being too greedy."
commit c902d4d4ba62306aa59cd30c3f450af5ad7bf797.

4) "Bug 696132: Grid fit images within pattern fills."
commit 6b04051b251d7dbde9a2e6f170cac9dc7950e20e.

After this I can reintroduce the commits and get (hopefully)
cleaner testing data.

base/gxdevsop.h
base/gxipixel.c
base/gxpcmap.c


2016-02-12 13:49:17 +0000
Ken Sharp <ken.sharp@artifex.com>
a44fff01232a1ae6c7200a403a132d860c2de718

pdfwrite - disallow Launch Actions in annotations when creating PDF/A

Bug #696547 "Converting to PDF/A using -dPDFACompatibilityPolicy=2 returns without error but produces invalid PDF/A files"

Another part of this bug. PDF/A does not permit Launch actions for
annotations, if we get one, and we are emitting PDF/A, consult the
CompatibilityPolicy and take appropriate action.

devices/vector/gdevpdfm.c


2016-02-12 13:48:06 +0000
Ken Sharp <ken.sharp@artifex.com>
1d83aa202383cfccdcf83a80f728106bf19267dd

pdfwrite - disallow missing glyphs in CIDFonts when creating PDF/A

Bug #696547 "Converting to PDF/A using -dPDFACompatibilityPolicy=2 returns without error but produces invalid PDF/A files"

One part of this bug. PDF/A insists that all fonts be embedded, and
all glyphs used from that font are present. If we detect a condition
where that is not the case, and we are emitting PDF/A consult the
CompatibilityPolicy and take appropriate action.

devices/vector/gdevpdtc.c


2016-02-12 13:45:43 +0000
Ken Sharp <ken.sharp@artifex.com>
9df72d93fbe869b44a566911bdf81d2aefc3ac79

Documentation - fix an incorrect example and make usage a little clearer

doc/VectorDevices.htm


2016-02-12 11:44:41 +0000
Chris Liddell <chris.liddell@artifex.com>
b7d67a3b885f86c23d731f2bff77e16d73e1dc39

Fix CompatibilityLevel typo in man pages

The man pages listed -dCompatibility instead of -dCompatibilityLevel

man/de/ps2pdf.1
man/ps2pdf.1


2016-02-12 11:41:10 +0000
Chris Liddell <chris.liddell@artifex.com>
7f32dc0df826defdd20f8cd493ce795e0c73b83a

Add documentation for the inkcov device.

Credit to Jonas Smedegaard <dr@jones.dk>

doc/Devices.htm


2016-02-12 10:57:35 +0000
Chris Liddell <chris.liddell@artifex.com>
3340d723e22500fd10c05ac113d7f5532a1ea762

Bug 696586 (2): Clean up some leftovers in my previous commit

base/openjpeg.mak


2016-02-12 09:01:20 +0000
Chris Liddell <chris.liddell@artifex.com>
4ca1d9d7a6a5cea50e1bb3a562b2b5c79d640c0c

Bug 696585: Fix jpeg, tiff and cups shared lib builds

Some more overzealous dependencies removed.

Mostly, credit to Jonas Smedegaard <dr@jones.dk>, plus some tweaks of my own

base/jpegxr.mak
base/lcups.mak
base/lcupsi.mak
base/tiff.mak


2016-02-12 08:51:09 +0000
Chris Liddell <chris.liddell@artifex.com>
cf6f31c177fb36b3a706c80da4c003d009fbe2af

Bug 696586: support shared OpenJPEG lib

There was a halfhearted attempt there already, do it properly.

Makefile.in
base/openjpeg.mak
configure.ac


2016-02-11 12:08:13 +0000
Robin Watts <robin.watts@artifex.com>
80693d83612e03b26a5006b74296c6e9f11779da

Bug 696132/696572: Continued "pattern gap" work - interpolate

Marcos reports (in bug 696572) that many files have problems
after the commit done for bug 696132. That commit was intended to
cause all orthogonal images within a pattern to be gridfitted.
Due to a mistake, this actually caused all orthogonal images
ANYWHERE to be gridfitted. That bug was fixed a few commits
ago (c902d4d).

Having fixed that, so we now operate as originally intended
we still have some problems showing. These (in the cases tested
at least) appear to be due to the radically different renderings
given of images when they are very slightly permuted. This is
because when images are being rendered at a smaller size
than their source, dropouts occur.

A classic example of this might be an image of the form:

* * * * * *
* * * * *
* * * * * *
* * * * *

which is used as a pattern to give a halftone efferct.

When downscaled, this is very sensitive to dropouts; we can easily
get solid black or white out of such images. Using interpolation
gives a truer rendition of the intended output.

This commit spots such downscales of gridfitted images within
pattern accumulators and forces interpolation on for them.

base/gxipixel.c


2016-02-11 12:08:23 +0000
Robin Watts <robin.watts@artifex.com>
1b843b1a6adca2f0245af8049b7c5d6d8f00ae5d

Bug 696132/696572: Continued "pattern gap" work - tidying.

Rejig the existing code slightly to make it more readable.

No functional changes, just clearer code.

base/gxdevsop.h
base/gxipixel.c
base/gxpcmap.c


2016-02-11 16:56:23 +0000
Ken Sharp <ken.sharp@artifex.com>
710d030617a586c5b9bbc105dd3054e467112f47

PDF interpreter - allow the operand stack to gro without limit

Bug #696567 "Error reading PDF file: /stackunderflow in --run--"

The file has a page with an outrageous number of ExtGStates on it,
447000, many (possibly all) of which do not contain any actual gstate.

This was causing a stackoverflow because the maximummoperand stack
size was set at 300,000. This commit builds on the code for
Bug #696487 (from the same customer) and enables the operand stack to
grow without limit when interpreting PDF files.

Of course, the page is still stupidly slow.

No differences expected.

Resource/Init/pdf_main.ps


2016-02-11 12:06:28 +0000
Ken Sharp <ken.sharp@artifex.com>
d781291c9acb4eb30bf4920882c23b03fa445a2b

pdfwrite - don't emit an empty clip

Bug #696566 "Regression: acrobat cannot open ghostscript generated pdf file starting with b56ff42047f6df6e7c74a79b91cd7d193bfa7357"

This appears to be a weird bug in Acrobat. If we had a PostScript file
which did the equivalent of 'clip newpath clip' then we could end up
writing the same equivalent to the PDF file as 'W n W n'. Under some
(and only some) conditions, depending apparently on what operation
followed the clip, Acrobat would throw a fit on this and stop.

No other PDF consumer seems to be bothered by this, and indeed if we
alter the PDF contents slightly Acrobat isn't bothered either.

Since I cannot determine exactly what Acrobat is complaining about, and
since the empty clip makes no real sense anyway, I've added code which
detects an empty path and doesn't bother to write the clip (W) operator.

This seems to pacify Acrobat, but I can't guarantee that other degenerate
paths won't cause similar problems.

No differences expected.

devices/vector/gdevpdfd.c


2016-02-10 21:07:57 +0000
Robin Watts <robin.watts@artifex.com>
c902d4d4ba62306aa59cd30c3f450af5ad7bf797

Fix gridfitting images being too greedy.

Devices that don't understand a gxdso will return -1, which we
were incorrectly reading as meaning "gridfit this image".

base/gxipixel.c


2016-02-10 15:57:02 +0000
Ken Sharp <ken.sharp@artifex.com>
393e7a835a375b32bf06e8eec4ef89cd2c333d99

PDF interpreter - handle Xref stream with incorrect length

Bug 696560 "Error reading PDF file"

The file uses compressed Xref streams (several of them in fact) and one
of them has an incorrect length (36 instead of 34). This leads to the
interpreter reading past the end of the stream and consuming the first
two bytes of the following token, so instead of seeing 'endstream' as
we should, we encounter 'dstream'.

We already have code which attempts to detect and handle this condition
but it assumes that the stream is being executed as an object, not as
an xref, and expects the object number and generation to be on the
stack, which they are not when we are dealing with an Xref stream.

In this commit, when we detect such a problem we attempt to verify if
we are dealing with an object by checking to see if the stack contains
at least 3 objects (the stream dict, the object and generation) and that
the second and third objects down are integers. If these conditions are
met we end the object and execute the 'exit' operator to terminate
the calling .pdfrun function. Otherwise we simply return with the
dictionary on the stack, as this is what the xref code expects.

The regression file Bug696240.pdf should now render correctly.

Resource/Init/pdf_base.ps


2016-02-10 12:50:03 +0000
Robin Watts <robin.watts@artifex.com>
7f5ed0cde537a43fdc8bae669ffc413f39d69df8

Detect 'impossible' code path being called.

As part of the work towards bug 696562, we spotted a code path
that can never be run.

gx_alloc_char_bits is only called from one place (base/gxchar.c
line 607). dev2 can only be non-NULL if:

iwidth > MAX_CCACHE_TEMP_BITMAP_BITS / iheight &&
log2_scale.x + log2_scale.y > alpha_bits

The second half of that condition can never be true due to the
construction of the log2_scale.{x,y} values in
gx_compute_text_oversampling().

Rather than rip this code out just before a release (and inevitably
be proved wrong), we add an error in this code path. If no one
reports it to us, we'll rip the code out later.

base/gxccman.c


2016-02-08 17:13:35 +0000
Robin Watts <robin.watts@artifex.com>
0fb16eb72ee9136856e0a52dcb194993fced16c9

Bug 696562: Interpolate imagemasks.

When rendering imagemasks, we can get nasty dropout effects if we
should be using interpolation. To fix this, we implement
interpolation for the non-high level device case.

We use copy_alpha (and copy_alpha_hl_color) to write the data. We
only do this in the case of devices that don't declare themselves
to be high-level.

base/gxiscale.c
devices/gdevpng.c


2016-02-09 17:12:17 +0000
Robin Watts <robin.watts@artifex.com>
71f32f8bbc9e905732293ef2c2bd0821744c1a86

Only insert default_copy_alpha_hl_color if it can work.

default_copy_alpha_hl_color requires underlying copy_planes and
get_bits_rectangle methods. If the device does not provide them
then do not add default_copy_alpha_hl_color.

base/gdevdflt.c


2016-02-08 12:23:01 +0000
Robin Watts <robin.watts@artifex.com>
d9f041d6fe7eda89364df1424f85ace974ed0fec

Extend copy_alpha to support 8 bit depth.

Currently copy_alpha (and copy_alpha_hl_color) can only accept
2 or 4 bits of alpha data. In order for the work on bug 696562
to proceed we need it to support 8 bits of alpha data. Extend
the 2 default implementations here.

Also update the docs to mention the new bit depths, and to mention
the existence of copy_alpha_hl_color at all.

Remove the line in the docs that claims copy_alpha will not be
called unless get_alpha_bits returns non-1, as this will shortly
not be true.

base/gdevabuf.c
base/gdevdbit.c
base/gdevm24.c
base/gdevp14.c
devices/gdevpng.c
devices/gdevsvga.c
doc/Drivers.htm


2016-02-08 18:51:14 +0000
Robin Watts <robin.watts@artifex.com>
3c75e35b6bbadd553a074509c3d80046457dda98

Bug 696571: Fix rangecheck in tiffscaled.

I was putting some params that I wasn't getting (or vice versa).

devices/gdevtifs.c


2016-02-08 17:10:42 +0000
Robin Watts <robin.watts@artifex.com>
453e8fca47db33555f86774b99cde0b429223c92

Tidy downscaler params.

Use ints rather than longs consistently. This should shut
coverity up.

base/gxdownscale.c
base/gxdownscale.h
devices/gdevfpng.c


2016-02-09 13:45:19 +0000
Ken Sharp <ken.sharp@artifex.com>
75a299ff71ef01d645acc744fb2248f99830e84a

silence a couple of compiler warnings

Check and action the return value from fread throw an ioerror if it
failed.

Prototype a couple of functions (this is an old warning)

I did not remove two functions 'pjl_impl_set_envvar' and
'pjl_impl_set_defvar'. Although these are not used at present they
match 'pjl_impl_get_envvar', which *is* used. It would be surprising
to a programmer if only one accessor was defiend.

pcl/pl/pjparse.h
pcl/pl/plparams.c


2016-02-08 16:55:47 +0000
Robin Watts <robin.watts@artifex.com>
4b65f6276c674a9947f3c65f7d08b46c02ba0ff3

Silence warning about unchecked return code.

Check the return code.

devices/gdevpsd.c


2015-09-10 10:04:23 +0100
Ken Sharp <ken.sharp@artifex.com>
d097c4624a7c23610b007aab98860d175535cb48

PJL interpreter - add new methods to configure pdfwrite

Bug #693117 "PCL -> PDF/A"
Bug #693058 "There is no way to control many pdfwrite features in GhostPCL (eg AutoRotatePages)"

Originally developed on the branch PJL_pdfwrite_config, full history
is available on that branch.

Added new PDFMARK and SETDISTILLERPARAMS PJL tokens which will allow
for 'PostScript like' syntax whch can be used to configure the
pdfwrite family of devices.

This will allow for the production of PDF/A-1b files and also the
control of some features which cannot be set from the command line.

Updated the documentation, gathering all the high level devices in
one place, split the documentation into controls based on the
input language and the output format.

No differences expected.

doc/Devices.htm
doc/Drivers.htm
doc/Ps2pdf.htm
doc/Ps2ps2.htm
doc/Readme.htm
doc/Use.htm
doc/VectorDevices.htm
pcl/pcl/pcjob.c
pcl/pcl/pcl.mak
pcl/pl/pjparse.c
pcl/pl/pjparsei.c
pcl/pl/pl.mak
pcl/pl/plparams.c
pcl/pl/plparams.h
pcl/pxl/pxsessio.c


2016-02-08 13:55:40 +0000
Ken Sharp <ken.sharp@artifex.com>
119e73617fb0f1b20e6d3257d26df0159c4ca81a

PDF interpreter - yet more robust error handlign with broken files

Bug #696540 "ps2pdf fails on a file that can be opened by some other viewers"

Two problems here.

First, the file has been truncated and garbage written, after the startxref
token. Previously we used the 'token' operator to try and read both the
'startxref' and the actual offset value. However, while executing the
token operator we reached EOF, and this *closes* the underlying file.
Unsurprisingly this then caused ioerrors on every subsequent operation.

So, define a new routine 'token_no_close' which installs a SubFileDecode
filter on top of the existing file/filter chain and reads from that. We
explicitly set CloseSource to false so that even if we encounter EOF
while executing the file we will only close the filter and not the
underlying file/filter chain.

However this then exposed a different problem when rebuilding the xref;
we scan backwards looking for a trailer with a /Root key. But if the
trailer was early in the file (< 64Kb), and the block reading worked
out so that the initial block was less than 64Kb then we would calculate
The offset to the trailer incorrectly because we assumed the block size
was always 64Kb, which it isn't if we don't have 64Kb to read.

No differences expected

Resource/Init/pdf_main.ps
Resource/Init/pdf_rbld.ps


2016-02-03 12:48:07 +0000
Robin Watts <robin.watts@artifex.com>
15f8b6ce6d7ae574d7803bb19d2f5cec474f087b

Disable trapping by default.

Build with ENABLE_TRAPPING to reenable it. Add explanation and
warnings to doc/Devices.htm.

base/gxdownscale.c
doc/Devices.htm


2016-02-01 17:22:53 +0000
Robin Watts <robin.watts@artifex.com>
afc7e2cfb9544a8cebd8abb0d89e02429ad98f7d

Reduce boilerplate downscaler params handling.

The same sets of parameters (or subsets thereof) are read/
written in many devices get/put_params routines to control
the downscaler.

Arrange to read/write these all in one place to keep the
code simpler.

base/gxdownscale.c
base/gxdownscale.h
devices/gdevfpng.c
devices/gdevgprf.c
devices/gdevpng.c
devices/gdevpsd.c
devices/gdevtfnx.c
devices/gdevtifs.c
devices/gdevtifs.h
devices/gdevtsep.c


2016-01-29 19:06:22 +0000
Robin Watts <robin.watts@artifex.com>
afbffabc7bf3593d3de5a210899e364371807c66

Simple optimisations to ClapTrap.

base/claptrap-init.c
base/claptrap-planar.c
base/claptrap.c


2016-01-28 11:33:52 +0000
Robin Watts <robin.watts@artifex.com>
049ba9c4de3514452e4bd3b6601c20e1d22188fd

Initial import of ClapTrap.

Hooked in under the downscaler, so accessible to any device that
calls the downscaler without too many changes.

Only enabled for CMYK devices, so tiffscaled32, tiffsep and
psdcmyk.

-dTrapX and -dTrapY set the horizontal and vertical search areas.
Use 0 for off, otherwise n searches +/- n either side.

TrapOrder sets the cmyk spot ordering from darkest to lightest.
For CMYK, default is [ 3 1 0 2 ] (K, M, C, Y).

For CMYK and spots, default is [ 3 1 0 2 4 5 6 7 ... ]. This
will be wrong if spots aren't arranged in darkest to lightest order.

A typical command line might look like:

gs -sDEVICE=tiffsep -dTrapX=2 -dTrapY=2 -o out.tif
-c "<< /TrapOrder [ 3 1 0 2 ] setpagedevice >>"
-f examples/tiger.eps

base/claptrap-impl.h
base/claptrap-init.c
base/claptrap-planar.c
base/claptrap.c
base/claptrap.h
base/gxdownscale.c
base/gxdownscale.h
base/lib.mak
devices/gdevpsd.c
devices/gdevtifs.c
devices/gdevtifs.h
devices/gdevtsep.c
doc/Devices.htm
windows/ghostscript.vcproj


2016-02-03 19:08:46 +0000
Robin Watts <robin.watts@artifex.com>
6b04051b251d7dbde9a2e6f170cac9dc7950e20e

Bug 696132: Grid fit images within pattern fills.

To avoid white lines appearing between pattern fills, grid fit
images whenever they appear within such fills.

Gridfitting involves stretching any axis aligned image to
completely cover the pixels it touches.

The vast majority of this patch is to do with detecting that
we are in a pattern accumulation device in a nice way (allowing
for the possibilities of pdf14 accumulators etc).

base/gxdevsop.h
base/gxipixel.c
base/gxpcmap.c


2016-02-05 10:31:10 +0000
Ken Sharp <ken.sharp@artifex.com>
de6cead970c7aebdca0c49d841bb94897f02102d

PDF interpreter - move a device name check into a parameter check

Bug #696568 "Treatment of page labels"

Previously we were checking against the device being pdfwrite before
processing page labels, because these require special handling. This
stops it working with the DejaVu device (which I wasn't previously
aware of) so instead we use the current method of checking a device
parameter to see if the device wants to be given the Page Labels.

Because the pdfmark syntax apparently cannot handle the range of
possible schemes for PageLabels (see bug #692901) we don't handle
PageLabels as pdfmarks, but instead as a specific device parameter.

We won't change this unless someone can show conclusively that the
pdfmark syntax can handle all possible formats for PageLabels.

No differences expected

Resource/Init/pdf_main.ps
devices/vector/gdevpdfb.h
devices/vector/gdevpdfp.c
devices/vector/gdevpdfx.h


2016-02-04 08:02:33 +0000
Chris Liddell <chris.liddell@artifex.com>
25717bc03607476d3fa3a4f26a852c8064fe31c4

Bug 696565: remove spurious deps for shared lcms, cups and jpeg

When I added a load of missing dependencies, I was over zealous and added some
depedencies to some of the shared library builds that are only relevant to the
non-shared library cases.

base/jpegxr.mak
base/lcms2.mak
base/lcups.mak
base/lcupsi.mak


2016-02-03 09:07:57 +0000
Chris Liddell <chris.liddell@artifex.com>
8a3b3487d4946e0b66388c2602d70a5ed45193ff

Don't use stack allocation for text enum

Text (and show) enumeators can no longer be safely allocated on the stack since
we need the memory manager's metadata to check the type (show or text) we're
dealing with (to correctly handle an error condition without crashing).

base/gstext.c
base/gxtext.h
pcl/pl/plfapi.c


2016-02-01 11:57:38 +0000
Chris Liddell <chris.liddell@artifex.com>
f8e77523b98f0e95e0d93fa282d6955f8f537eea

Bug 696516: tiffsep(1) validation of compression method

Use a meaningful value of bits-per-component to validate the compression setting
for tiffsep and tiffsep1.

Since both those devices ignore the device BitsPerComponent setting, we cannot
rely on that, so check explicitly for tiffsep or tiffsep1 and use an
appropriate bpc value depending which is in force.

Also, change the comment on the default tiffsep(1) device(s) BitsPerComponent
value from "Not used" to "Ignored" which is more accurate, since bpc can and
does change, but has no effect on those two devices.

devices/gdevtsep.c


2016-02-03 11:56:00 +0000
Robin Watts <robin.watts@artifex.com>
5c1ae7a77f19ff3e7521a80c276335e473ba2b60

VS2015: Workaround apparent C runtime bug.

The behaviour of _read appears to have changed in VS2015 in
a way that is contrary to the documentation. If a _read call
is given a single "return" keypress, it puts \n in the buffer
but returns 0 as the number of things read.

This, according to the documentation means 'EOF'. We therefore
have some sneaky code to guess when it's lying to us.

psi/dwmainc.c


2016-02-02 15:10:21 +0000
Robin Watts <robin.watts@artifex.com>
57df4f3b0234e4231f024b53e0428ead17e95c3c

VS2015 builds: Tweak to fix bool problems.

Always include windows_.h first, wherever we include it.
This gets the windows definition of 'bool' in, and we can then
override it with our own.

base/gp_mswin.c
base/gp_ntfs.c
base/gp_win32.c
base/gp_wsync.c
base/gsicc_monitorcm.c
base/gstype42.c
base/stdpre.h
devices/gdevmswn.h
devices/gdevmsxf.c
devices/gdevwpr2.c
psi/msvc.mak
psi/zwinutf8.c


2016-02-02 10:27:05 +0000
Ken Sharp <ken.sharp@artifex.com>
bb799fa99685fc9cd0177242a5f923180eda135c

Revert and fix commit a7655b5d2fc42217eac71efd01f22fe3cca33d4a

In the previous commit I misunderstood the return value meanings from
s_DCT_byte_params leading to an incorrect default (and causing many
diffs)

This commit properly sets the return value so that, if the key is not
found we use the correct default.

Again, lots of diffs expected here.

base/sdcparam.c


2016-02-01 15:51:05 +0000
Ken Sharp <ken.sharp@artifex.com>
a7655b5d2fc42217eac71efd01f22fe3cca33d4a

PS interpreter - further fix for DCTEncode params arrays

commit 96f79a46a559af75995bf021cc85438c99509bbb missed the fact that,
when a parameter is returned from parameter processing we need to
return a positive code > 0, otherwise the caller assumes that there was
no error, but no key found either.

This actually makes the HSamples, VSamples and QuantTables work for
the DCTEncode filter.

This causes a *very* large number of diffs, because the pdfwrite (and
ps2write) devices now actually use the parameters defined for these values
resulting in small differences in DCT (JPEG) output.

Also the Quality Logic test 23-12E.ps tests this feature and now shows
a difference.

base/sdcparam.c


2016-01-29 13:51:02 +0000
Chris Liddell <chris.liddell@artifex.com>
b826c1774a0b89e237590232be227642734c3a5e

Bug 696553: reduce redundant loading of (some) substitute fonts

Loading fonts from a Fontmap mapping, the actual font name from the font
file usually does not match the Postscript font name.

When that happens, a subsequent attempt to load the same font name will not
find the font in the font directory, and this triggers the whole font file
loading process via Fontmap.

Add code to create a new font with the original Postscript font name.

Also, undefine the orginal font from the font file, to avoid cluttering up
the FontDirectory with pointless entries.

Resource/Init/gs_fonts.ps


2016-02-01 10:32:52 +0000
Ken Sharp <ken.sharp@artifex.com>
96f79a46a559af75995bf021cc85438c99509bbb

PS interpreter - fix array processing for the DCTEncode params dict

The PLRM says that HSamples, VSamples can be strings, arrays or packed
arrays and QuantTables can be an array or a packed array (of strings,
arrays or packed arrays). If they are array types, then the values must
be integers.

In sdcparam.c where we process the paramters we were checking and
processing strings, and if the data was not a string we tried to handle
it as an array of floats (which is technically incorrect), but we never
tried to process the data as an int array.

This led to the routine throwing a typecheck error, so the values were
never used.

This commit adds processing for int arrays (I've left the float array
processing intact, even though its wrong).

No differences expected, this is really only used by pdfwrite.

base/sdcparam.c


2016-01-30 10:45:29 +0000
Ken Sharp <ken.sharp@artifex.com>
9399eefc54d7c14b9ebf56ca585f4946abaf555e

pdfwrite - fix alpha duplication

Bug #696524 "gs: Some elements discarded in PDF with 3d transform"

The bug title is incorrect. In fact the problem is complex; we have two
forms, each of which is preceded by a graphics state, each graphics state
modifies the constant alpha, but one has alpha is shape false, while the
other has it as true.

This causes confusion when updating the alpha as we cannot have AIS
both true and false at the same time, so we don't know which alpha to
use.

This commit checks the graphics state to see which alpha usage is the
default state and sets AIS from that, as appropriate for whether the
opacity or shape is set.

This is a little hacky but I think its safe enough and fixes what is a
rather rare problem.

devices/vector/gdevpdfg.c


2016-01-29 10:30:13 +0000
Chris Liddell <chris.liddell@artifex.com>
471af1e1961054327484bf86a474669f37634c7f

Bug 696554: cleanup after failing to read font value

In /.findfontvalue, if we hit an error tokenizing the contents of the font file
the stack cleanup was incorrect.

Resource/Init/gs_fonts.ps


2016-01-28 15:37:14 +0000
Ken Sharp <ken.sharp@artifex.com>
29757551f9935292418df94d588693e13e3afeec

PDF interpreter - repair xref processing with PDFSTOPONERROR

commit c9f24068810f762f2a54d33d7cb8040eff080368 accidentally broke the
processing of xref tables with -dPDFSTOPONERROR, any xref would lead to
an error and premature exit.

This commit repairs the processing as intended, so that *valid* xref
tables won't cause us to stop with an error.

No differences expected

Resource/Init/pdf_main.ps


2016-01-28 12:24:05 +0000
Ken Sharp <ken.sharp@artifex.com>
1204680ae25d0cfa1ab815952b3009a024c6b9ec

pdfwrite - prevent emitting a negative value for linewidth

Bug #696548 "Regression: acrobat cannot open ghostscript generated pdf file starting with d43d5653c0e052c172ce1db9d9b04d4ba7360de3"

The PDF reference states that linewidth is a non-negative number, and
we were emitting a negative value in some conditions.

Bizarrely (given the horrendously broken PDF files Acrobat *will* read)
this causes an error in Acrobat, though not in practically every other
PDF consumer.

This commit simply forces the value to be positive.

No differences expected.

devices/vector/gdevpdfd.c


2016-01-28 11:38:53 +0000
Ken Sharp <ken.sharp@artifex.com>
d6d499ba4bb4fa27d0f6970a5e98b3372f52d05c

PDF interpreter - Handle inline images in a text block

Bug #696545 "Missing inline images"

Similar to bug #695897, where image XObjects were being drawn inside
a text block (between BT and ET), in this case we have inline images
(ID) inside a text block.

This is, according to the specification, illegal but Acrobat simply
ignores that and draws the image using the CTM in force when the BT
operator is encountered.

This commit just reuses the code for Bug 695897 and applies it to the
ID operator as well.

No differences expected

Resource/Init/pdf_draw.ps


2016-01-27 18:42:06 +0000
Chris Liddell <chris.liddell@artifex.com>
a8b8922b4608d6bf021714100dcd3b85ac1a8c86

Make waterfal.ps standalone

Originally waterfal.ps called .runlibfile to run landscap.ps (in the lib
directory) to draw the page landscape.

Since .runlibfile is non-standard Postscript, and lib is no longer in our
default search path, *and* it is only five lines of Postscript, it's a
needless complication - better for the file to be self contained.

examples/waterfal.ps


2016-01-26 08:47:30 -0800
Michael Vrhel <michael.vrhel@artifex.com>
3bbced3ab549bef42f47fb28c10287b32826d1b4

Fix for Bug 696514. rinkj device

The rinkj device was dereferencing a NULL pointer related
to the ICC device link profile that it can be set up to use.
Fixing this issued and playing around with a various command
line options revealed a problem in error trapping in the
icc code where you could cause a crash by having a bogus
device link profile specified on the command line. This
fixes that crash also.

base/gsciemap.c
base/gsicc_create.c
base/gsicc_manage.c
base/gsicc_manage.h
devices/gdevrinkj.c
xps/xpscolor.c
xps/xpsimage.c


2016-01-26 16:48:22 +0000
Ken Sharp <ken.sharp@artifex.com>
5e270fffe76164b07b29dec2358ef01003866674

PS Interpeter - correct the error from setfileposition on invalid file

Noticed while working on a different problem, the check_file macro in
stream.h returns invalidaccess if a file is invalid, the PLRM (see
setfileposition operator on p669 of the 3rd edition) says that the
error return should be ioerror.

base/stream.h


2016-01-26 15:45:55 +0000
Ken Sharp <ken.sharp@artifex.com>
704617563f8640f6b229ffd65185f79efb0ae195

PDF interpreter - more robustness in the face of broken Info dicts

Bug #696541 "ps2pdf fails (typecheck) on a file that can be opened by some other viewers"

This only fails if the device states it can accept document info,
currently that's limited to pdfwrite and friends.

The problem is that the Info dictionary contains invalid strings, and
those cause the parsing to break with an error.

This commit simply ignores the error (thereby bit-bucketing the Info)
just like other devices.

Resource/Init/pdf_main.ps


2016-01-25 15:50:14 -0800
Michael Vrhel <michael.vrhel@artifex.com>
d9dbc622e4828089e4f2ad63203eb2a32b0e1737

Fix for bug 696517

bitrgbtags device needed to have its get_color_comp_index
set to the gx_default_DevRGB_get_color_comp_index.

devices/gdevbit.c


2016-01-25 12:27:58 -0800
Michael Vrhel <michael.vrhel@artifex.com>
9a5c3505255381bcfd4ec3b5265142927d56e264

Bug 696521. Fix for bit rotted contributed devices.

These devices now run to completion. I can't verify if the output
is correct however.

contrib/japanese/gdevmjc.c
devices/gdevphex.c


2016-01-25 09:59:23 -0700
Henry Stiles <henry.stiles@artifex.com>
6e07b8891aa1bebf258f3936fd537e169aa45c05

Fix #69643 Margins don't work in XL.

The PXL interpreter was setting the hardware margins to 0 overriding
the setting from the command line. We simply remove the setting and
let the device set to the default parameters if it isn't set on the
command line or explicitly elsewhere.

pcl/pxl/pxsessio.c


2016-01-23 08:13:45 -0700
Henry Stiles <henry.stiles@artifex.com>
ccb0968c696ab80eb19071e0f3b93c850759856a

Fix typo in last commit.

pcl/pcl/rtgmode.c


2016-01-22 12:17:29 -0700
Henry Stiles <henry.stiles@artifex.com>
f56510cefb91ee24becd43e5f0d9baa7be53367d

Fix badly scaled image (696530) and refactor.

Many RTL plotters do not restrict resolutions so we allow any resolution
in RTL mode. Further the the function which sets the resolution was
awkward: wrongly commented with a complex nested ternary operator. We
now use a simpler lookup table and hopefully have a better explanation
of what we are doing in the comments.

pcl/pcl/rtgmode.c


2016-01-22 14:30:39 +0000
Ken Sharp <ken.sharp@artifex.com>
c30df20c44d608b9c0832e5ef117f08cd358895b

pdfwrite - correct a buffer size when converting colours

Bug #696531 "Ghostscript segfaults on some PDF files"

When converting DeviceN (and some other) spaces to a different colour
space we do not convert the actual space, we convert the *base* space
in order to better preserve the original colour intent.

For example a Separation ink of 'PANTONE 4' might have a base space (to
which the PANTONE colour will be converted if that ink is not available)
of DeviceCMYK. If we set the ColourConversionStrategy to RGB then we can
either convert every pantone colour to CMYK then convert the CMYK to RGB
or we can alter the base space from CMYK to RGB, we choose to alter the
base space.

To do this we need to create a function which maps the input colours to
the base space. This function needs a data source, and the buffer being
allocated to hold the data had its size incorrectly calculated.

This led to running off the end of the buffer and corrupting memory.
This commit corrects the buffer size calculation.

No differences expected.

devices/vector/gdevpdfc.c


2016-01-22 13:55:24 +0000
Robin Watts <robin.watts@artifex.com>
19abd5d192aeab76f521791148f8b586414504a1

Bug 696522: Set up copy_planes for all planar devices.

Previously we never set up the copy_planes dev proc for planar
devices that had a single plane, but it seems we need to.

base/gdevmpla.c


2016-01-21 09:51:43 -0800
Brian Norris <computersforpeace@gmail.com>
0c176a91d53c85cdacd7917c76d6f659125ac3f6

Bug 696528: kill off ijs-config

The custom ijs-config tool gives different include paths than pkg-config
(-I${INCLUDE_PATH}/ijs vs. -I${INCLUDE_PATH}/), which can be confusing
for developers using this library. pkg-config is more standard anyway,
so just kill the custom tool.

ijs/Makefile.am
ijs/Makefile.in
ijs/configure
ijs/configure.ac
ijs/ijs-config.1
ijs/ijs-config.in
ijs/libtool


2016-01-21 10:48:54 +0000
Robin Watts <robin.watts@artifex.com>
fd63655e199fbfcda8e52c873b3a28bf27914c93

Enable "accurate curves" by default.

This helps to address bug 696466 (and it's earlier related
bug 688434).

base/gxistate.h


2016-01-21 18:09:09 +0000
Robin Watts <robin.watts@artifex.com>
e25594f98886a164f4465505595691aca8136deb

Bug 696466: Preliminary work on setaccuratecurves.

If accurate curves are enabled, and the same path is filled
and then stroked, we can get very different results when the
flatness is high.

This can look very odd. Ensure that we flatten paths in the
same way for both fills and strokes when accurate curves is
enabled.

base/gxfill.c
base/gxpath.h


2016-01-20 20:15:42 +0000
Robin Watts <robin.watts@artifex.com>
064559beaa05329b1d9e6283e6d17a8c87765e7f

Bug 696466: Fix incorrect line joins in strokes.

When we flatten a path for stroking, we keep 'notes' on each
line to tell us whether each line was present in the original
path, or whether it was generated by the flattening process.

We further note which lines were generated by the flattening
process, and are NOT the first one in a given curve. We do this
so that we can apply the 'curve join' to the start of such line
segments.

The "curve_join" is an optimisation to speed path drawing. When
we've flattened a curve, it makes no sense to draw (say) a round
join between each flattened line, because they will be almost
parallel, and the join will be visually indistinguishable from
a simple bevel (in most cases).

It's still important that we draw the correct curve between any
preceeding line and the first line in the curve though.

Sometimes, (especially when setaccuratecurves is turned on), the
first line in a flattened curve may be degenerate (i.e. 0 length).
The stroker spots degenerate sections and skips them. Unfortunately
that means it also skips the note about it being the first line
from a curve, and the wrong join is used.

The fix implemented here is to alter the stroker so that when
it skips a degenerate section, it checks for the 'first line
from an arc' flag and carries it forwards.

base/gxstroke.c


2016-01-18 10:16:09 -0800
Ray Johnston <ray.johnston@artifex.com>
68dc00f46d402685f2060ce7ae1b64056996556f

Improve interpolated image processing collecting runs of non-pure colors.

It the colorspace output is not "pure", runs were not being detected.
Use code similar to the pure color case detecting runs when the interpolated
color (psrc) is the same.

This allows the file on Bug 696140 to complete (eventually).

base/gxiscale.c


2016-01-19 12:32:37 -0800
Michael Vrhel <michael.vrhel@artifex.com>
1e153e19cfd9660ea81c738ea8be3dd9183b3bbc

Fix dereference of NULL pointer

When gscms_get_link is called with a device link profile as the source
and no destination profile, we had a dereferencing issue. Thanks
to Henry for seeing this.

base/gsicc_lcms2.c


2016-01-18 16:50:46 +0000
Ken Sharp <ken.sharp@artifex.com>
10916df6310cb94c4074302cf485f535d76b4533

PS/PDF interpreters - fix Text rendering mode 3 with large glyphs

Bug #696513 "Regression: Ghostscript renders unexpected boxes starting with bb246f03fab855325a73fdc982ed9802c1f16772"

The commit noted as causing the regression is, frankly, incorrect.

When handling text we have two possible paths; one with caching and,
for large glyphs at high resolution, one without caching.

When doing a stringwidth or Tr3 with a cached glyph, we simply avoid
rendering the cached bitmap. However with non-cached glyphs its not so
simple. We run the CharProc/BuildGlyph procedure as PostScript, which
means all the operations are indistinguishable from regular PostScript.

So, when performing a stringwidth using a non-cached glyph, and prior to
the noted commit, when using Tr 3, we push the null device in order to
prevent the glyphs actually marking the page, and then grestore back to
original device when we finish.

The commit noted broke that by failing to push the null device, meaning
that uncached glyph in rendering mode 3 did actually mark the raster.

The first part of the commit reverses the earlier commit, and implements
skipping the currentpoint by explicitly checking the 'operation' before
performing it. In fact this is no longer necessary as the PDF interpreter
now checks this at an earlier stage and the original bug can no longer
be reproduced this way anyway.

However, this exposed two new problems which had previously been masked,
but were nevertheless potential bugs:

The 'procs' structure in a device was originally intended to be fully
populated, each proc should either have a device-specific method or a
graphics library default. This means there is no need to check the value
of a device proc, we can always execute it.

Unfortunately, as noted before, this has been broken for some time in
the code base. There are several methods which do not have graphics
library defaults, and are not set up by the default device macros. This
can lead to the 'procs' members being NULL.

There are several places in the code where we explicitly check for a
device method being NULL before execution in order to catch this
condition. Ideally we should go back and fix these properly so that we
can go back to simply executing the device method without checking. But
this is a big job.....

So here we add two more cases where we check a device method
'update_spot_equivalent_colors' to be sure its not NULL before we
execute it.

No differences expected.

base/gscdevn.c
base/gscsepr.c
base/gxchar.c


2016-01-18 08:57:10 +0000
Chris Liddell <chris.liddell@artifex.com>
da79b51a8bc3aeb4c4e55ae4ce6ebe07b34b93cf

Fix xpswrite/gprf builds with shared zlib.

Both those devices depend on zlib, but lacked the Makefile magic to cope with
both "local" and shared zlib libraries.

devices/devs.mak


2016-01-15 15:46:07 +0000
Ken Sharp <ken.sharp@artifex.com>
1e6b986c30ca319ad87d5e1fea9a327d74f3de83

PDF interpreter - improved Acrobat matching with illegal '--x' numbers

It seems that Acrobat handles malformed numbers of the form '--<number>'
by ignoring the duplicated negations. GS was treating these as 0.

This commit adds to the special 'invalid number' scanning by treating
numbers with any number of negative signs as a single negative.

Progressions in sumatra/2238_-_text_wrongly_aligned.pdf and
sumatra/2238_-_doubly_negated_numbers.pdf

psi/iscan.c


2016-01-14 14:21:22 +0000
Ken Sharp <ken.sharp@artifex.com>
193ecef5be3f755e8285a55776e0aacdbaf249c1

PDF interpreter - allow unlimited growth of stacks

Bug #696487 "Error: /undefined in --run-- reading PDF file"

The problem is caused by the fact that we use a dictionary to store
ExtGstate changes, so every time we do a gsave we need a new dictionary
to hold those changes. The file is sub-optimal and contains thousands
of nested gsaves, which means we need thousands of dictionaries, and
quickly fill up the dictionary stack.

We could specify a larger maximum dictionary stack, but there is no
obvious limit to files of this type, one page was seen to have in excess
of 6,000 nested gsaves. Instead we permit unchecked stack growth by
setting MaxDictStack (or MaxOpStack / MaxExecStack) to -1 so that the
stack will grow as required until we run out of memory.

Bug #696511 has been opened as an enhancement to move the ExtGstate
parameters into the regular graphics state which has to be better than
the current kludge.

No differences expected.

Resource/Init/pdf_main.ps
psi/istack.c
psi/zusparam.c


2016-01-13 11:27:59 +0000
Chris Liddell <chris.liddell@artifex.com>
665d68106d0a0853273d0d0d4a555f22cd984c0b

Fix libjpeg jconfig.h dependency

Our customised jconfig.h depends on our own arch.h header - add that to
jpeg.mak

base/jpeg.mak


2016-01-12 15:59:03 +0000
Chris Liddell <chris.liddell@artifex.com>
bb6963e41cedb4ff68db0e0ff61d4de2668fdc5e

Tidy up the error code and string return in arg_next()

Previously the arg_next() return value was the string containing the argument
and the error code (if any) was returned via a pointer parameter to an int
variable.

Change it so the return value is the error code, and the argument string is
returned via a parameter.

base/gsargs.c
base/gsargs.h
pcl/pl/plmain.c
psi/imainarg.c


2016-01-12 10:22:59 -0800
Michael Vrhel <michael.vrhel@artifex.com>
05aa8a4d63935183a0902d33892041ea3f7769da

Fix crash in x64 Windows display device

The code used for the 64 bit display device was broken due
to an improper initialization of the pointer size during
the class registration as well as the use of the wrong
API where we were using SetWindowLong/GetWindowLong instead of
SetWindowLongPtr/GetWindowLongPtr. Thanks to Robin for
helping with this.

pcl/pl/plwimg.c
psi/dwimg.c


2016-01-12 14:43:17 +0000
Ken Sharp <ken.sharp@artifex.com>
fde64dbcf02a2548145d662196e83cd0319cece5

PS interpreter - properly handle errors when preparing to run CDevProc

Bug #696503 " Regression: segfault with pdfwrite starting with 2deb460ef02e2802546e09979243764ede2d4173"

The bug title is something of a misnomer, the stated commit does not
cause the problem, it simply shifts memory around and exposes the
already existing bug.

The problem is caused by a faulty CIDFont, and the default behaviour of
the PDF interpreter, which does not halt when an error is encountered.

When running CIDFonts we need to execute a CDevProc in order to add the
PDF /W or /W2 values to the width of the glyph. However, the font we use
when setting up to run the CDevProc is broken so badly that we throw an
error from z1_set_cache. We return the error, but we don't terminate
the text enumerator, which leads to us continuing with the text. Not
surprisingly this eventually crashes.

This commit terminates the 'show' operation if it detects an error when
setting up to run the CDevProc.

No differences expected

psi/zchar.c


2016-01-11 16:10:52 +0000
Ken Sharp <ken.sharp@artifex.com>
15b3f5cbf12461e2ed318e793669b7c34e32089b

text extraction - restore the GC macro

Robin asserts that this macro can have no effect and removed it as it
causes a compiler warning.

Checking this properly will require more time than I have conveniently
at the moment, and I seem to recall that this was required, in the past
at least.

Because this might result in a difficult to track down GC problem, and
was only removed to prevent a compiler warning, I'm restoring the old
code until I can get the time to walk through it properly and determine
if it is genuinely unused, and if it is, whether it should be.....

devices/vector/gdevtxtw.c


2016-01-11 14:13:42 +0000
Chris Liddell <chris.liddell@artifex.com>
d43e2ebb241d5a6ed63a2d0cc2c7ff0909498510

Remove legacy lower case arch_* macros

Most of the ARCH_* macros had lower case equivalents for "backwards
compatibility" - it's been long enough.....

base/gdevdevn.c
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/gsalloc.c
base/gsbitops.c
base/gsbitops.h
base/gsccode.h
base/gscie.h
base/gsfont.c
base/gsovrc.c
base/gspaint.c
base/gsparam.c
base/gxalloc.h
base/gxbitops.h
base/gxchar.c
base/gxcht.c
base/gxcindex.h
base/gxcvalue.h
base/gxdcolor.c
base/gxdevcli.h
base/gxdevice.h
base/gxfapi.c
base/gxfill.c
base/gxfill.h
base/gxfrac.h
base/gxi12bit.c
base/gxidata.c
base/gxiscale.c
base/gxmclip.h
base/gxobj.h
base/gxoprect.c
base/gxpcmap.c
base/gxsample.c
base/gxtype1.h
base/gzht.h
base/scf.h
base/shc.h
base/smtf.c
base/spngp.c
base/std.h
contrib/gdevhl12.c
devices/gdev4693.c
devices/gdevbmpc.c
devices/gdevdsp.c
devices/gdevgprf.c
devices/gdevimgn.c
devices/gdevmgr.c
devices/gdevmswn.c
devices/gdevpcx.c
devices/gdevpsd.c
devices/gdevstc.c
devices/gdevstc.h
devices/gdevsun.c
devices/gdevtfax.c
devices/gdevtfnx.c
devices/gdevtsep.c
devices/gdevupd.c
devices/gdevxcf.c
devices/vector/gdevpdfb.c
devices/vector/gdevpdfv.c
pcl/pcl/pccoord.h
pcl/pcl/pcommand.h
pcl/pl/plchar.c
psi/ialloc.c
psi/idict.c
psi/idict.h
psi/igcref.c
psi/igcstr.c
psi/iref.h
psi/zdouble.c
psi/zusparam.c
toolbin/color/icc_creator/ICC_Creator/icc_create.cpp


2016-01-09 08:09:06 +0000
Chris Liddell <chris.liddell@artifex.com>
9bf5ab79cf5a0e9d6eee490fe1859c6d6aa28ca5

Fix typo in Make.htm.

Spotted by Brian Norris.

doc/Make.htm


2016-01-08 15:42:30 +0000
Chris Liddell <chris.liddell@artifex.com>
4b7b278daa5a8290681de6ad157060fb2e9068ea

Bug 696497 (part 2): fix support for building with a JPX decoder

base/lib.mak
psi/int.mak


2016-01-08 13:54:22 +0000
Chris Liddell <chris.liddell@artifex.com>
57fbbff9f296ddf75d3deafb0094543a04c5450b

Tweak LCMS2 endian setting in configure

The previous configure setting did not work with the latest endian stuff in
lcms2.h when building a universal binary on Mac. This change resolves that.

Also change the order of the types we check when looking for a 64 bit data
type for color indices - put the more commonly successful one first. Again,
this is in support of universal binaries on Mac.

Noticed in passing.....

configure.ac


2016-01-08 11:00:08 +0000
Chris Liddell <chris.liddell@artifex.com>
2e8632ae0ac799d4ad7cf253530576c53369baa7

Bug 696498: clean up endian configure checks

The custom endian checks in the configure scripts were implemented because the
built-in test in the most common autoconf version at the time was buggy on
several platforms.

Those autoconf problems were addressed some time and several versions ago, and
the newer versions are widely adopted, so we can safely use the built-in
AC_C_BIGENDIAN() test.

configure.ac


2016-01-07 20:32:19 +0000
Chris Liddell <chris.liddell@artifex.com>
08eaf8b0f70c5ad000001e01d767e4093ba38eff

Tidy up cmap table selection in fapi_ft.c

Rearrange so we don't try to select the cmap table for non-TT fonts, and only
once.

Also, make it explicit and comment the fact we ignore the return value from
the Freetype call.

base/fapi_ft.c


2016-01-07 17:44:56 +0000
Chris Liddell <chris.liddell@artifex.com>
d5fe73441042077ee8e76494a94b9fef5102c3d0

Bug 696502: cope with PaintProc with more gsaves than grestores

If a pattern PaintProc executes one or more gsave operations, and fails to
execute a matching number of grestore operations, we can end up trying to
complete any transparency operations and cache the pattern tile with the
wrong gstate in force.

pattern_paint_cleanup() already dealt with that, so add similar code to
pattern_paint_finish() - as the information is already available on the
stack.

psi/zpcolor.c


2016-01-07 17:09:34 +0000
Chris Liddell <chris.liddell@artifex.com>
03456d0a01bfb2823261d200d40bf2975c947eb8

Bug 696499: avoid infinite recursion of Show calls

In the PDF interpreter we keep a procedure called "/Show" in the PDF
graphics state dictionary, which gets changed to suit the current text
rendering settings when we enter a text context.

To cope with a previous broken PDF we prevent changes to the graphics state
under certain circumstances (specifically, after a 'W' operator).

In this case, we have a *very* broken PDF that attempts to draw some text
in these circumstances - as the graphics state is is now "locked", we
cannot update /Show and we end up infinitely recursing.

We now special case /Show to prevent this.

Resource/Init/pdf_ops.ps


2016-01-07 12:33:45 +0000
Chris Liddell <chris.liddell@artifex.com>
b0f5a97512332ecf2ec7cf1cc413fe7305a4060e

Bug 696497: Fix support for building with no jbig2 decoder

base/lib.mak
psi/int.mak


2016-01-07 09:03:10 +0000
Chris Liddell <chris.liddell@artifex.com>
8f5d28536e4518716fdfe974e580194c8f57871d

Bug 696281: fix check for using shared freetype lib

When I changed the initial value of the Freetype source path variable (to reduce
the risk of header search path problems), I neglected to fix the logic for
falling back to the system's libfreetype2.

Credit to Rodrigo Rivas Costa for spotting the problem.

configure.ac


2016-01-07 09:15:54 -0800
Michael Vrhel <michael.vrhel@artifex.com>
2e29faf57ebe822b6f4c526b87a21c7cfeea768b

Remove unused code from last commit

Last commit had a static function that I was thinking of using. I decided not to
use it and forgot to remove it with the commit.

base/gxiscale.c


2016-01-05 10:41:58 -0800
Michael Vrhel <michael.vrhel@artifex.com>
b1e15776353f8128dfec34a50a14feea12b2a072

Refactor code in gxiscale.c

Quite a bit of code duplication present in gxiscale.c. This gets many of the color
tests/initializations into common static functions and simplifies some of the tests.

base/gxiscale.c


2016-01-06 20:08:20 +0000
Robin Watts <robin.watts@artifex.com>
e9a94db35178e398c759fdf31fa586e2913aab55

VS builds: Ensure /FC is added to CFLAGS

/FC forces the compiler to report full paths in warnings and
error messages. This enables throwback to work correctly in the
IDE. This only affects builds with the DEVSTUDIO variable
defined (i.e. those done from the VS solution).

psi/msvc.mak


2016-01-06 19:16:58 +0000
Robin Watts <robin.watts@artifex.com>
bd067d202a7944554dafb82ee71e5ce4ab0adf90

Remove some wacky code from gxttfb

Originally by Igor, neither Chris nor I can understand the
purpose of this purposeless code.

Chris has run against the test files and can't find any that trigger
the case, so removing it seems harmless.

base/gxttfb.c


2015-12-31 13:55:01 +0000
Robin Watts <robin.watts@artifex.com>
645e21d1faa7024c6d6f4c690125453344f56c2d

Bug 649971: GS Stroking fix

'Fat' strokes for curves of high curvature can go wrong due to the
winding for the 'underjoin' below curves being in the wrong sense.

This commit introduces a tweaked version of the code that solves this
at the cost of more complex paths. Sadly the cost for this seems to
be a huge slowdown, so the new code is disabled for now unless we
build with SLOWER_BUT_MORE_ACCURATE_STROKING defined.

base/gxstroke.c


2016-01-06 16:54:22 +0000
Robin Watts <robin.watts@artifex.com>
ab929e3d6568334e336a952794918fb92123e869

VS Solution: Add some missing files

windows/ghostscript.vcproj


2016-01-06 17:01:28 +0000
Robin Watts <robin.watts@artifex.com>
6c2ec1e45216df7311cf14dd0b1d261a0173d70c

Silence some more warnings.

base/gdevdbit.c
base/gdevflp.c
base/gdevoflt.c
base/genht.c
base/gp_unix_cache.c
base/gshtscr.c
base/gsicc_manage.c
base/gxclrast.c
base/gxclread.c
base/gxclthrd.c
base/gxcpath.c
base/gzcpath.h
base/ttinterp.c
contrib/pcl3/eprn/eprnrend.c
contrib/pcl3/eprn/gdeveprn.c
psi/iscan.c
psi/iscanbin.c
psi/zimage.c


2016-01-06 16:57:16 +0000
Robin Watts <robin.watts@artifex.com>
433d47aa3efdcf5cb26026dae27793ab901f12db

Fix some dropped errors in pdfwrite.

devices/vector/gdevpdf.c
devices/vector/gdevpdfo.c
devices/vector/gdevpdfu.c
devices/vector/gdevpdfx.h


2016-01-05 17:05:19 +0000
Robin Watts <robin.watts@artifex.com>
b30e140190d1b18eaf769a29855f5cfe20e4922e

Squash warnings: postscript interpreter

Avoid some 'defined but not used' warnings in release builds.

Avoid a particularly bonkers warning about "string" + int not doing
concatenation (and simplify the code a bit).

Remove some unused code.

psi/ilocate.c
psi/iutil.c
psi/zcontext.c


2016-01-05 16:26:12 +0000
Robin Watts <robin.watts@artifex.com>
e0bcc257b1d94b8d5b1e800c25a1dd7149aa773c

Fix macro error in gxfapi.h

We have a macro that defines an expression. Add params to ensure
that if MACRO = A || B || C that !MACRO = !(A || B || C) not
!A || B || C.

base/gxfapi.h


2016-01-05 17:00:38 +0000
Robin Watts <robin.watts@artifex.com>
5f7bc19bbbc551142dd94733a94657ef571ea4f8

Fix some error returns in pdfwrite.

Various places in the pdfwrite device we call:

gs_note_error(x)

and then carry on. The compiler warnings report whinges about
this.

We could fix it by doing:

(void)gs_note_error(x);

to simply shut the compiler warnings up, but it might be nicer to
do it properly by changing the functions to correctly return
errors.

I'm going to try the latter. Ken can kick me later.

devices/vector/gdevpdf.c
devices/vector/gdevpdfo.c
devices/vector/gdevpdfu.c
devices/vector/gdevpdfx.h


2016-01-05 17:07:02 +0000
Robin Watts <robin.watts@artifex.com>
9c8d7abbff0cb9f8856e18934528f7b81702627d

VS solution: gdevpxut.c was in the wrong place.

windows/ghostscript.vcproj


2016-01-05 17:04:45 +0000
Robin Watts <robin.watts@artifex.com>
fd9a66f997bb57e9628a703774eddcf933475a34

Squash warnings: various warnings in devices.

Nothing contentious here.

devices/devs.mak
devices/gdevlp8k.c
devices/gdevpxut.c
devices/gdevupd.c
devices/rinkj/rinkj-screen-eb.c
devices/vector/gdevpdti.c
devices/vector/gdevpsds.c
devices/vector/gdevpx.c
devices/vector/gdevtxtw.c
devices/vector/gdevxps.c
devices/vector/whitelst.c


2016-01-05 12:43:23 +0000
Robin Watts <robin.watts@artifex.com>
e7e548af55b7034409e96483fee1d92313573973

Squash miscellaneous warnings.

Remove some redundant variables, and tweak code to avoid compiler
warnings.

contrib/gdevmd2k.c
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/src/gdevpcl3.c
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
devices/gdevhl7x.c
devices/gdevifno.c


2016-01-05 07:39:18 -0800
Ray Johnston <ray.johnston@artifex.com>
8fa72d8d85859cc4e8e52bd72231f1af8f7862a2

Fix minor typo in "unbalanced q/Q" message for "too many q's" case.

Resource/Init/pdf_main.ps


2016-01-05 09:49:24 +0000
Chris Liddell <chris.liddell@artifex.com>
53975ad9284df0a3aaaaca1f9bf7843620741086

Type 1 glyph name synthesis minor efficiency improvement

Some very small efficiency improvements - mainly, avoiding the need to
re-init a scratch string with a loop.

Resource/Init/gs_type1.ps


2016-01-04 19:50:53 -0800
Michael Vrhel <michael.vrhel@artifex.com>
7c2b9d06f582996ed6c230aacfbf9a0dc88c1349

Clean up logic statements in gxiscale.c

The test to determine if we need to do an upfront decode during the color
management of colors in the image scaling routine were confusing to
say the least. This should clarify everything.

base/gxiscale.c


2016-01-04 19:44:35 +0000
Robin Watts <robin.watts@artifex.com>
92e3e79af6a068f99a723aba56df6b2cd17bbb39

Squash clang warnings: Miscellaneous more warnings

All fairly self explainatory.

base/gxfdrop.c
base/gxfill.c
base/gxhintn.c
base/gximono.c
base/gxshade6.c
base/gxstroke.c
base/gxttfb.c
base/sjpx_openjpeg.c
base/ttfmain.c
base/vdtrace.c
contrib/gdevgdi.c
contrib/gdevlx7.c
contrib/opvp/gdevopvp.c
windows/ghostscript.vcproj


2016-01-04 18:56:28 +0000
Robin Watts <robin.watts@artifex.com>
e3bc0494fc7084bd729a393e7bd6aebeeba6b6a9

Squash clang warning: Avoid testing enums out of range.

clang complains that the code we use to test whether an enum value
we get it out of range is testing for values outside the enum range.
Fix it with an explicit cast.

base/gstrans.c


2016-01-04 18:54:17 +0000
Robin Watts <robin.watts@artifex.com>
d957420f8b2949fb7cd7563ee52af2807eb9aa7a

Squash warning: clist code

clang complains that the clist code is checking an enum return against
out of range values. Rejig the code to use a switch rather than the
chain of ifs (clearer IMAO), and handle the out of range values in the
default case.

base/gxclrast.c


2016-01-04 18:44:36 +0000
Robin Watts <robin.watts@artifex.com>
06f4897ea836544c48f15b7b3ffb7c4d1dc3a7d1

Remove unused structure definition from gsshade.c

Meshes are a superclass - never instantiated on their own.

base/gsshade.c
base/gsshade.h


2016-01-04 18:44:01 +0000
Robin Watts <robin.watts@artifex.com>
94ce8c79aca2a839f369a3d61347facb1b5bef7e

Fix harmless tiny type typo in icc stuff.

This shuts clang up.

base/gsicc_create.c


2016-01-04 18:42:49 +0000
Robin Watts <robin.watts@artifex.com>
438f429625773d675a0649fb189e1378be2c6b29

Squash warnings: gsht.c

Remove unused table, and pacify clang by casting an enum type to
int before comparing it to out of range enum values.

base/gsht.c


2016-01-04 18:28:21 +0000
Robin Watts <robin.watts@artifex.com>
9aec49be8f43a1a3a4bdad7a552ef9fcf039b2e7

Avoid unused function warning in release builds.

base/gsfcmap1.c


2016-01-04 18:27:12 +0000
Robin Watts <robin.watts@artifex.com>
3d07583e43d472979250f57b80a50028226c667b

Fix use of uninitialised var.

base/gscspace.c


2016-01-04 18:24:31 +0000
Robin Watts <robin.watts@artifex.com>
3a563b047e686038283474b9cef942ffa889f7a3

Fix typo: == should be =

base/gdevprn.c


2016-01-04 18:22:43 +0000
Robin Watts <robin.watts@artifex.com>
34857cb1514033237cf658f33157a991606cfe7d

Remove unused definition.

base/gdevp14.c


2016-01-04 18:11:52 +0000
Robin Watts <robin.watts@artifex.com>
3343e6fe21259e548cb93748f70e81c7255d7ec7

Squash warnings: Use better unused var paradigm.

Using "n = n;" causes some versions of gcc to whinge. Trying
(void)n; instead.

base/gspmdrv.c
base/gsptype1.c
contrib/japanese/gdevmjc.c
devices/gdevcmykog.c
devices/gdevgprf.c
devices/gdevpsd.c
jpeg/jcsample.c
xps/xpszip.c


2016-01-04 18:11:18 +0000
Robin Watts <robin.watts@artifex.com>
80ceaaec2fe06505cb0a5059ad5f95ea28004f9f

Remove unused function from gdevddrw.c

base/gdevddrw.c


2016-01-04 17:34:53 +0000
Robin Watts <robin.watts@artifex.com>
24c51631502da158557e0f35368756dd95cdfb38

Fix potential problem in transparency code

If we ever use more the 8 bits for color values, we'd try to
pack numbers > 255 into a byte in pdf14_cmykspot_put_image and
pdf14_custom_put_image. Simple fix is to use 0xff rather than
gx_max_color_value.

base/gdevp14.c


2016-01-04 17:33:25 +0000
Robin Watts <robin.watts@artifex.com>
46b2671d6526cb6aee37f786bb616c1513248a02

Fix typo in gdevdbgr.c

Should be | not || as a & (constant || constant) doesn't really
make sense.

base/gdevdgbr.c


2016-01-04 17:18:19 +0000
Robin Watts <robin.watts@artifex.com>
7069210f88b764929a32713ab5032f02097b62b5

Squash warnings: XPS MSVC

Add some casts etc to squash (most of) the warnings seen in
an MSVC debug build of ghostxps.

We have an unavoidable "cast away of const" in a devspecop call,
and various stupidities in the jpegxr lib left over.

xps/ghostxps.h
xps/xpscff.c
xps/xpscolor.c
xps/xpsglyphs.c
xps/xpsgradient.c
xps/xpsjpeg.c
xps/xpsjxr.c
xps/xpspath.c
xps/xpspng.c
xps/xpstiff.c


2016-01-04 16:39:31 +0000
Robin Watts <robin.watts@artifex.com>
d697081ba9f0943977ed5ae8a62c7389046a5776

Squash warnings: MSVC PCL

Squash the warnings seen when building a debug PCL build on MSVC 2005.

Mostly addition of simple casts.

pcl/pcl/pcjob.c
pcl/pcl/pcpage.c
pcl/pcl/pglabel.c
pcl/pcl/pglfill.c
pcl/pcl/rtgmode.c
pcl/pl/plchar.c
pcl/pl/pllfont.c
pcl/pxl/pximage.c
pcl/pxl/pxink.c
pcl/pxl/pxvendor.c


2016-01-04 16:16:18 +0000
Robin Watts <robin.watts@artifex.com>
15d2abc903ed91f5f319687c2bc6959a38d36069

Windows PCL: Correct return type from int to void.

Nothing was ever returned.

pcl/pl/plwmainc.c


2016-01-04 16:11:06 +0000
Robin Watts <robin.watts@artifex.com>
5fe48dd2498953fc3df7f8f22655e91c77f97076

Squash warnings: MSVC ones.

Tweak the code to avoid the warnings seen in the MSVC debug build of
gs.

Mostly adding a few casts to make type changes explicit (and hence
avoid the "casting from int to double might lose data" etc warnings).

Reorder the headers in a couple of places to avoid offsetof being
redefined in a system header warnings.

base/gpmisc.c
base/gsicc_create.c
base/gxclimag.c
base/gxfapi.c
devices/gdevdsp.c
devices/gdevfpng.c
devices/gdevgprf.c
devices/gdevpng.c
devices/gdevtifs.c
devices/vector/gdevpdfu.c
devices/vector/gdevpsds.c
devices/vector/gdevxps.c
psi/gsdll.c
psi/iscannum.c
psi/iutil.c
psi/zdpnext.c
psi/zdps1.c
psi/zmatrix.c
windows/ghostscript.vcproj


2016-01-04 17:07:35 +0000
Chris Liddell <chris.liddell@artifex.com>
063c0a1eface77cdc2c4e657599521c7146ec8ca

Bug 696480: add a missing 'pop' for stack cleanup.

When attempting to create all viable glyph name mappings in a Type 1 font,
as a last ditch, we try to parse a unicode code point out of a string containing
a'uniXXXX' type glyph name (where 'XXXX' is the code point). If that parsing
fails, we were leaving the string on the stack, causing an error.

Resource/Init/gs_type1.ps


2016-01-04 14:14:35 +0000
Robin Watts <robin.watts@artifex.com>
7795f0f1f8700651d2a79f979a5d40885569dd11

Squash warnings: ICC code.

Various bits of the ICC code collects return values only to not
check them. Fix that here.

In some cases this is because functions have a 'void' return type
so there isn't a way to return an error. Change those return types
and ensure that all callers check and propogate the errors.

base/gdevdevn.c
base/gscms.h
base/gsdevice.c
base/gsequivc.c
base/gsequivc.h
base/gsicc_cache.c
base/gsicc_cache.h
base/gsicc_cms.h
base/gsicc_lcms.c
base/gsicc_lcms2.c
base/gsicc_manage.c
base/gsicc_monitorcm.c
base/gsicc_nocm.c
base/gsicc_replacecm.c
base/gspaint.c
base/gxclimag.c


2016-01-04 14:10:04 +0000
Robin Watts <robin.watts@artifex.com>
998c8bf7a2e409b6c4c29b8e535028a24404e7c5

Squash warnings: Contrib devices

Workaround as many warnings as possible in the contrib devices.

Removing dead code, checking return values etc, fixing type casts
(char to unsigned char etc).

contrib/eplaser/gdevescv.c
contrib/gdevmd2k.c
contrib/japanese/gdev10v.c
contrib/japanese/gdevalps.c
contrib/japanese/gdevespg.c
contrib/japanese/gdevfmpr.c
contrib/japanese/gdevlbp3.c
contrib/japanese/gdevmag.c
contrib/japanese/gdevml6.c
contrib/lips4/gdevl4r.c
contrib/lips4/gdevl4v.c
contrib/opvp/gdevopvp.c
contrib/pcl3/eprn/eprnparm.c
contrib/pcl3/src/gdevpcl3.c


2016-01-04 14:07:31 +0000
Robin Watts <robin.watts@artifex.com>
39cdb5df0e2f8e3e4410e008b2a7fb72dcdff805

Avoid ignoring a return code during garbage collection.

psi/ireclaim.c


2016-01-04 14:05:59 +0000
Robin Watts <robin.watts@artifex.com>
3388e52d3ea54fa2d46e857d3004a229d143ad40

gdevxcf: don't confuse rgb and cmyk profile functions.

We are writing prgbs to both ProfileRGB and ProfileCMYK.
That seems wrong.

devices/gdevxcf.c


2016-01-04 14:04:00 +0000
Robin Watts <robin.watts@artifex.com>
dd32af452b8bd08e7eb5daf3344d2caae8a13dc7

Squash Warnings: JBig2

ifdef out some used code.

Make some functions static that should be.

jbig2dec/jbig2_generic.c
jbig2dec/jbig2_image.c
jbig2dec/jbig2_refinement.c
jbig2dec/jbig2_segment.c


2016-01-04 13:59:43 +0000
Robin Watts <robin.watts@artifex.com>
046f22db259214cb77b95e631d65ebdacec79a87

Squash warnings: XPS.

Avoid some warnings in the XPS code.

Mostly 'set but unused' variables. Either remove these or
(in cases where they may be required later) comment them out.

Ensure that all return codes are checked once read. This has
meant making a few functions return error codes that didn't before.

Include an extra gs header in ghostxps.h. This trips the code into
objecting to using printf etc. Change the calls to printf to use
dlprintf instead (as they should do).

Change the prototypes for some functions to pass const params
in some cases, and make a few return error codes rather than ignoring
them.

Add a couple of missing prototypes.

xps/ghostxps.h
xps/xpsdoc.c
xps/xpshash.c
xps/xpsmem.c
xps/xpsopacity.c
xps/xpsxml.c
xps/xpszip.c


2016-01-04 13:52:43 +0000
Robin Watts <robin.watts@artifex.com>
7a7588ce7c7cd1b0a8d55818af5d2f34dd17d3ff

Minimise warnings in unix ijs code calling execvp.

execvp should really take const char *args, but linux is 'inconsistent'
about this. We assume that the args are of this form in our code,
so we'd rather have 1 warning on the call on such systems, rather than
n about the setup on all systems.

ijs/ijs_exec_unix.c


2016-01-04 13:51:23 +0000
Robin Watts <robin.watts@artifex.com>
882ce8be8592ed51243c9a7190c89fb1d2d61fd8

ijs_server: Don't ignore the 'sign' var when parsing ints.

ijs/ijs_server.c


2016-01-04 13:16:03 +0000
Robin Watts <robin.watts@artifex.com>
91470dae4954f9c9e36c019616c3ff7bcdd173de

Squash warnings: Cull unused or dead code.

In cases where the code is there for potential future use,
comment small sections out or use #ifdef UNUSED.

base/mkromfs.c
contrib/gdevcd8.c
contrib/gdevdj9.c
contrib/gdevgdi.c
contrib/gdevlx32.c
contrib/gdevop4w.c
contrib/japanese/gdevmjc.c
contrib/japanese/gdevrpdl.c
devices/gdevhl7x.c


2016-01-04 13:10:15 +0000
Robin Watts <robin.watts@artifex.com>
2d914c99900578d76753a134ea6d7bf35eb932f3

Squash warnings: Add explicit bracketing.

&& binds more tightly than || in C (similarly & and |).

Expressions such as "A && B || C" are therefore well defined, but
often error prone and confusing to read, so the compiler warns about
them. We add explicit parentheses to shut this up (and to clarify
the code).

base/gxiscale.c
contrib/pcl3/eprn/eprnfs.c
contrib/pcl3/eprn/eprnparm.c
contrib/pcl3/eprn/eprnrend.c
contrib/pcl3/eprn/gdeveprn.c
contrib/pcl3/eprn/mediasize.c
contrib/pcl3/src/gdevpcl3.c
contrib/pcl3/src/pclcomp.c
contrib/pcl3/src/pclgen.c
contrib/pcl3/src/pclsize.c
devices/gdevpsd.c


2016-01-04 13:03:13 +0000
Robin Watts <robin.watts@artifex.com>
c8e1e6dff1d48adf79659455e7082735909558a1

Squash warning: switch(rop)

Ensure that rop3_T and rop3_S are defined as enum values as well
as preprocessor definitions.

They must be preprocessor definitions as otherwise the rop templating
code does not work. If they are not enum values, we get warned about
switch(rop) testing for values not defined in the enums.

base/gsropt.h


2016-01-04 12:57:15 +0000
Robin Watts <robin.watts@artifex.com>
ff1c44b4dbe241df64dd3d9892df56a421921c2b

Squash warning: Improve static init

base/gsptype1.c


2016-01-04 12:54:18 +0000
Robin Watts <robin.watts@artifex.com>
cc15153ffe7fe8ca9fa38091bfb50a67897b768b

Squash Warnings: Add casts to avoid warnings.

base/gdevmem.c
base/gsht.c
base/gsicc_manage.c
base/gzht.h
base/sdctd.c
contrib/gdevbjc_.c
contrib/gdevbjc_.h
contrib/gdevbjca.c
devices/rinkj/rinkj-device.h
devices/rinkj/rinkj-screen-eb.c
psi/imain.c


2016-01-04 12:44:43 +0000
Robin Watts <robin.watts@artifex.com>
240b8f048945a129aacb1e84c7e7b66cf0d5bff1

Squash Warnings: Unused Var/Var set but not used.

base/gscrdp.c
base/gsfcmap1.c
base/gsicc.c
base/gsiorom.c
base/gstype1.c
base/gstype42.c
base/gxclimag.c
base/gxdtfill.h
base/gxhintn.c
base/gxi12bit.c
base/sdcparam.c
base/strmio.c
devices/gdevcdj.c
devices/gdevlp8k.c
devices/gdevphex.c
devices/gdevxalt.c
devices/gdevxcf.c
devices/rinkj/evenbetter-rll.c
devices/rinkj/rinkj-epson870.c
devices/vector/gdevpdfk.c
devices/vector/gdevpsds.c
psi/imain.c
psi/zfont.c
xps/xpscff.c
xps/xpsfont.c
xps/xpsglyphs.c
xps/xpsgradient.c
xps/xpstile.c
xps/xpszip.c


2016-01-04 11:53:44 +0000
Robin Watts <robin.watts@artifex.com>
8db551f3a3e949035889fcb63188764ca61ab8c1

Squash warnings: Warnings caused by printf specifiers.

base/gdevnfwd.c
base/gscspace.c
base/gsicc_cache.c
base/gsicc_manage.c
base/gsmchunk.c
base/gstrans.c
base/gxclrect.c
base/gxpflat.c
base/scfd.c
devices/vector/gdevpsft.c
psi/igc.c


2016-01-04 11:43:51 +0000
Robin Watts <robin.watts@artifex.com>
6e628ac44909dd2a0fc738eaa491d92a6e4c1db0

Squash Warnings: Simple unused variable warnings.

base/gdevflp.c
base/gdevoflt.c
base/gscoord.c
base/gsptype1.c
base/gxclist.c
contrib/japanese/gdev10v.c
devices/gdevcmykog.c
devices/gdevgprf.c
devices/gdevijs.c
devices/gdevplan.c
devices/gdevpsd.c
jpeg/jcsample.c
psi/zicc.c
xps/xpsjxr.c


2015-12-31 08:34:09 -0800
Robin Watts <Robin.Watts@artifex.com>
95a16466806c9f8c4f783fd6ebfb0095b9227f56

Squash warning: remove unused variable.

base/gxshade6.c


2015-12-31 16:13:19 +0000
Robin Watts <robin.watts@artifex.com>
df47d1bfc3f5d3bf5c58660b98840f3c9a6b6018

Avoid some warnings in the stroking code.

base/gxstroke.c


2015-12-31 02:40:39 -0800
Robin Watts <Robin.Watts@artifex.com>
27ab71451562b815d04e71903c1feb223069c0a2

Bug 697822: clist fix

When saving/restoring the clist state around the saved pages
processing, ensure that the file handling is correct. Leaving
the old filenames in play in particular is a bad thing, as the
shared fdesc stuff gets confused by this.

This commit reworks that so that clist files aren't closed/reopened
as much.

base/gxclpage.c


2015-12-31 02:39:10 -0800
Robin Watts <Robin.Watts@artifex.com>
f920cb3d90603df9c5f48df007ef10750f2427ff

Bug 695822: clist fix

When reading from the cfile, if we fail to read a cmd_block,
give up as nothing else will make sense.

base/gxclread.c


2015-12-31 02:37:31 -0800
Robin Watts <Robin.Watts@artifex.com>
87d413205bd948d302345004092ed43f9b6bc213

Bug 695822: clist fix

If we rewind a page, ensure that the 'end_pos' for the bfile is
reset to 0.

base/gxclist.c


2015-12-31 02:36:52 -0800
Robin Watts <Robin.Watts@artifex.com>
7c67185c0f428f2cec5a8bb339e8917ee3f6584e

Trivial whitespace fix in clist comment.

base/gxclfile.c


2015-12-28 13:22:35 +0000
Robin Watts <Robin.Watts@artifex.com>
834afc272d0df4dc09b1f24ac4366afa26de48b2

Bug 693777: Valgrind indeterminism.

Valgrind reports an indeterminism in gs_image_class_1_simple,
caused by penum->map[0].inverted not being set.

Analysis reveals that image_init_colors is not setting .inverted
in some cases. The fix is simply to ensure that it's always set.

base/gxipixel.c


2015-12-27 09:51:24 +0000
Ken Sharp <ken.sharp@artifex.com>
34ccb87a69ed6e632468e495a54ecb69bf9f5719

pdfwrite - remove some debugging code causing a compiler warning

devices/vector/gdevpdfm.c


2015-12-24 17:18:09 +0000
Ken Sharp <ken.sharp@artifex.com>
d4056b5dab63199d86c8fb140807b9b307a427c0

pdfwrite - implement Metadata pdfmark and a non-standard extension metadata pdfmark

Bug #696472 "pdfwrite lacks support for /Metadata pdfmark"

There are several issues tackled in this single commit:

1) A previous commit left it impossible to use the EMBED pdfmark unless
producing PDF/A, fixed.

2) The Metadata pdfmark is now implemented. This allows the user to
specify an XMP stream which will be written to the Catalog of the PDF
file. The pdfwrite device will not overwrite this, or add any further
Metadata, it is the user's responsibility to get the XMP data correct.

3) A new pdfmark 'Ext_Metadata' has bee defined. This takes a string
parameter which contains XML to be add to the XMP normally created by
pdfwrite. Again ths is up to the user to specify correctly.

In no case does pdfwrite attempt to validate the data, though it will
issue warnings that PDF/A and PDF/X files may not be valid.

The additional pdfmark is to support creation of the ZugFERD electronic
invoice (http://www.ferd-net.de/front_content.php?idcat=231&changelang=4)
and potentially other similar formats in the future.

These new features are essentially untested.

devices/vector/gdevpdf.c
devices/vector/gdevpdfb.h
devices/vector/gdevpdfe.c
devices/vector/gdevpdfm.c
devices/vector/gdevpdfx.h
doc/Ps2pdf.htm


2015-12-23 14:11:47 +0000
Ken Sharp <ken.sharp@artifex.com>
21bd4941bafcd55064ba70acf1af66117e1267bd

Documentation - sterner words on use of PDFSETTINGS

Many people use the 'PDFSETTINGS' switch without, aopparently, comprehending
that this will involve some alteration to the input. In addition there
seems to be a belief that '/prepress' will produce the best (ie closest
to the original) output, which is absolutely not the case. The best
quality is obtained by leaving pdfwrite alone.

I doubt it will make any difference, since so many people use a cargo cult
approach to Ghostscript command line parameters, but at least it is now
in the documentation.

doc/Ps2pdf.htm


2015-12-23 12:30:12 +0000
Ken Sharp <ken.sharp@artifex.com>
e55a2b097f17846a23d0454302f7950d83baca9c

pdfwrite - If downsampling filter initialisation fails, don't downsample

If the image downsampling filter failed during initialisation we still
carried on and set up to downsample (we ignored the error return). This
would later result in a further error, and we would try to fall back
using the default image code. However, that would again try to set up
the downsampling filter, and would again fail, resulting in the image
being dropped from the output.

Here we check the return code from image initialisation, and if it fails
we emit a warnign and stop trying to do downsampling.

devices/vector/gdevpsdi.c


2015-12-23 12:27:31 +0000
Ken Sharp <ken.sharp@artifex.com>
8f7f0dc6616762ee14437265ec8f10bef4094a95

pdfwrite - fix mono image downsampling for /prepress setup

The /prepress PDFSETTING had the monochrome image downsampling set to
/Bicubic. This is not appropriate for monochrome images, as it would
require converting the image to to grayscale.

The same is true for all downsampling methods except /Subsample, so
here we alter the setting to /Subsample, which matches the other settings.

Resource/Init/gs_pdfwr.ps


2015-12-22 17:21:37 +0000
Robin Watts <robin.watts@artifex.com>
dd43cb649f5772096b71c23f1bf36982531b74fa

Bug 694970: Improve downscaler docs.

Mention the explicit limit for DownScaleFactor.

There is no point in downscaling by more than 8, as any given
pixel ceases to contribute enough to make a difference.

At any rate, any downscale scale >= 12 runs the risk of overflowing
the 32bit integers used to do the sum.

doc/Devices.htm


2015-12-22 13:42:04 +0000
Ken Sharp <ken.sharp@artifex.com>
0fd77514b93367aafaddfa3138f2b8424c7f7085

Documentation - Note that the pdfwrite option PDFA now allows values up to 3

doc/Ps2pdf.htm


2015-12-22 13:35:48 +0000
Ken Sharp <ken.sharp@artifex.com>
8555f7fd1500322ab6e5b2ab979eb233623c232d

pdfwrite - permit creation of PDF/A-3 files, disable file embedding if PDFA < 2

Bug #696473 "feature request: PDF/A-3 support"

There is actually very little practical difference between a PDF/A-2
and a PDF/A-3 file, PDF/A-3 permits embedding of arbitrary files
while PDF/A-2 does not.

Prior to commit a91d2576df0e60f6e691a3bd967b51109ae41f22 which
added support for the EMBED pdfmark there was therefore no point in
PDF/A-3 output.

This commit allows the -dPDFA switch to be turned up to 3 and creates
appropriate metadata. It also disables the EMBED pdfmark when creating
PDF/A-1 and emits a warning for PDF/A-2 that we don't validate the
content (PDF/A-2 only permits inclusion of PDF/A-1 and PDF/A-2). The
precise behaviour depends on the setting of PDFACompatibilityPolicy.

I can't claim this is well tested.

devices/vector/gdevpdfe.c
devices/vector/gdevpdfm.c
devices/vector/gdevpdfp.c


2015-12-18 16:14:31 +0000
Robin Watts <robin.watts@artifex.com>
50cb214c0223d12c891cbab8e5d337975b6f3cba

Move Memento include back into jbig2_priv.h

It's clearly nicer not to have Memento as part of the external
interface of jbig2, and this solves bug 696183.

The include has ping ponged back and forth from jbig2.h in the
past due to problems with the jbig2 allocator field naming.
We fix that here with a spot of #ifdef/#undef-ery.

We also simplify some of the hackery here. Rather than having
specific defines such as GSBUILD (meaning 'get memento.h from
some place that you magically know about') and JBIG_NO_MEMENTO
(meaning 'just ignore memento.h at all'), we now just have
JBIG_EXTERNAL_MEMENTO_H.

Projects which have their own version of Memento in, and use
jbig2dec should define JBIG_EXTERNAL_MEMENTO_H to the location
of the memento.h file at build time.

base/jbig2.mak
jbig2dec/jbig2.c
jbig2dec/jbig2.h
jbig2dec/jbig2_priv.h


2015-12-18 14:03:06 +0000
Ken Sharp <ken.sharp@artifex.com>
6f57908e88674a1582e87043f79dc8a1c04ce55f

PDF interpreter - reword warnings

Marcos has complained on customer's behalf on a number of occasions
that we don't use the word 'error' very much when fixing broken PDF
files leading to unrealistic expectations from the customer.

This commit breaks the errors and warnings up into two distinct groups;

Warnings are now uncommon and are reserved for situations where it seems
unlikely to me that the problem will result in a rendering error. For
example, any problems processing ToUnicode CMaps are now treated as
warnings since these are not used in rendering.

Anything which I feel has a reasonable chance of indicating a problem
with the PDF file sufficiently serious to result in a difference between
our output and Acrobat is now flagged as an error.

Each message should explicitly use the word error or warning as
appropriate, to avoid any confusion.

The end of job notifications differ slightly between errors and
warnings (errors state again that the output may be incorrect). This
potentially allows us to take additional different action in the future
as errors and warnings are tracked separately (NB errors trump
warnings, if you get an error, you get he error EOJ message)

These notifications now also obey QUIET, so they won't be show if this is
set.

Resource/Init/pdf_base.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


2015-12-17 14:33:22 +0000
Robin Watts <robin.watts@artifex.com>
f8803ba7066e3be8a627e62eb1406c21c604c639

Bug 696142: Sanitise tiffsep separation names.

The existing code 'copies' separation names for printing/using in
filenames in a very naive way. It essentially blanks out any
characters unsupported in the filesystem with (or '%') with '_'.
Top bit set chars are let through unchanged, which causes
confusion as we now assume that filenames are held internally
in utf-8 format.

The code is updated here to output such filenames with simple
%02x style escaping. All characters unsupported in the filesystem
(or '%', or backspace, or top bit set chars) are escaped.

This leaves us utf-8 safe strings.

The only 'interesting' aspect here is that we have to check for
whether we need to put '%%' instead of '%' because we might be
printf-style processing the string later on.

devices/gdevtsep.c


2015-12-16 12:24:12 -0800
Michael Vrhel <michael.vrhel@artifex.com>
47d23e2dfbae8db3b142b70aaef086c1bd6e097d

Fix for Bug 695074 x11 device encode color

The X11 device can be set up for different bit depths including
indexed like colors. It could fill its palette when we have
a small number of possible colors and fail to encode. Really the
device should not fail the encoding but always return the best
color that it can. It should not rely upon gs to do any halftoning
to provide possibly see if another color could be encoded.

With this fix, we try to use a color that is in the existing palette,
adding a color if it is not available and we have space. If we
no longer have space we now force the use of the closest color in
the table.

devices/gdevxcmp.c


2015-12-16 14:55:01 +0000
Ken Sharp <ken.sharp@artifex.com>
c9f24068810f762f2a54d33d7cb8040eff080368

PDF Interpreter - improve performance on files with many xref sections

Bug #696454 "Regression: Performance decrease starting with 002cd5262ccb71010473abfb9069e1fb39f36f12"

The file is very large, and has an extremely large (~700,000 entries)
xref table with a very large number of sections in it. Normally we
allocate our internal xref storage as we parse the xref table, each time
we find a new section we increase the size of an array by the number
of entries in the section.

If we have a lot of sections, we end up spending a lot of time in the
memory management, allocating, copying and freeing arrays. This was less
of a problem when we used a 2D array because each array had a maximum of
65535 entries. However now that we use a single array this can be time
consuming.

The first part of this commit searches the trailer dictionaries (stored
after the xref) looking for the /Size entry. If we find one we use that
to set the initial size of the xref array. This saves us having to resize
the array as the Size is large enough to contain all entries.

However, this file *also* has an error in its /Size entry. It declares
the /Size as 88693, whereas in fact the xref contains nearly 700,000
entries. Our code still worked, but it was again spending a great deal
of time in memory management.

So the second part of this commit detects the fact that the declared
/Size is incorrect. When this happens, instead of allocating just
enough new entries in the array for the section we have discovered we
allocate 65534 entries, which makes it more likely that subsequent
sections will not need to increase the size again.

This is slightly wasteful of memory as we allocate storage we will never
use, but since the file is invalid it seems better to do this than
spend a lot of time minimising memory usage.

In my cluster tests this seems to give a small performance improvement

No other differences expected.

Resource/Init/pdf_main.ps


2015-12-15 11:34:12 +0000
Ken Sharp <ken.sharp@artifex.com>
8a5802e5c99959032ccd1763861effbd30dad440

PDF interpreter - improved recovery encountering broken fonts

Bug #696306 "Incomplete rendering of PDF file"

The original commit to fix this 487ed6d3b5fabbe21c23da288fbf020f49a28fae
did resolve the problem, however it was replaced with a better (better
in terms of correct PostScript error handling)
243614398b7bf3e8c4d080de7f8bbcb7436472cf

Unfortunately I only tested that with a decompressed file from MuPDF,
rather than the original file, and this failed with an additional
problem in the original file.

The file has a font stream which is ASCIIHex encoded, but contains,
at the end, some non-ASCIIHex characters (specifically a Q) which
causes an error in the ASCIIHexDecode before we even try to execute
the font (which is also damaged).

The commit to fix this fixed the handling of the broken font, but did
not work correctly with the invalid ASCIIHex stream. The problem was
that the font code returns a null object (instead of a font dictionary)
but does not signal an error. This means that the code for recovering
the operand and dictionary stacks did not execute, leaving the dict
stack in an incorrect state.

This code copies and executes the recovery code so that, even if there
is no error, we still clean up.

In addition, PDFSTOPONERROR is now honoured in a couple more places when
we encounter font problems.

Finally I haver altered pdfformaterror to put its output on stdout
instead of stderr, because this makes debugging much easier (the
warnings are now interleaved into the PDFDEBUG output for instance).

No differences expected

Resource/Init/pdf_font.ps
Resource/Init/pdf_main.ps


2015-12-14 13:05:14 +0000
Chris Liddell <chris.liddell@artifex.com>
877655e3ec275accf5cba7cd724ec845fb4cb396

Coverity 120747: correct a typo in the WOFF C code

base/gstype42.c


2015-12-14 12:43:05 +0000
Chris Liddell <chris.liddell@artifex.com>
a7addfad24879fadb2d44fba25be70ed43ccb163

Bug 692427: include the ICC code in the Level 2 features

The ICC handling code was pulled in by the PDF interpreter feature, but since
9.00 we *always* have an ICC color workflow (even for Postscript). So make
the Postscript Level 2 core depend on the ICC feature (this should be sufficient
because we no longer support a pure Level 1 interpreter, and it saves rewriting
the ICC Postscript code to use only Level 1 + Ghostscript extensions code).

Resource/Init/gs_icc.ps
psi/int.mak


2015-12-14 11:46:15 +0000
Chris Liddell <chris.liddell@artifex.com>
760fcc4243072daa545419f57c0513b3d24a23de

Use sdct.dev in non-autotools builds, too.

And fix a typo from previous commit

base/lib.mak
base/unix-gcc.mak
psi/msvc.mak


2015-12-14 14:26:55 +0000
Ken Sharp <ken.sharp@artifex.com>
a3cc9ea512025960b68deca87170053e43393dbc

PDF interpreter - handle (invalid) PS CMap streams

Bug #696449 "Incomplete rendering of PDF file"

The file includes a CIDFont which uses a custom CMap, which is incorrectly
defined. CMaps in PDF files are specified to be a CMap stream, that is a
dictionary declaration followed by a stream of data. The dictionary
should contain the CMApName, the CIDSystemInfo and WMode.

The supplied file has a stream which is simply a PostScript CMap, it
does not include any of the required definitions, and is, as far as I can
see, therefore invalid.

Nevertheless 'Acrobat can open it', so I've modified the type 0 font
and more specifically the CMap interpretation, to read a PostScript
CMap. This is not as easy as it may seem, and there may still be
problems with this code, because PostScript CMap files are normally
(unsurprisingly) run in a PostScript interpreter. Trying to handle them
without executing them in a PostScript interpreter is tricky. We can't
simply execute the PostScript (which would be ideal) because we need to
alter the CMAP Type.

This commit also contains a minor change to make Annotation processing
check the PDFSTOPONERROR flag when running annotations, and if it is set
cease processing, instead of ignoring the error.

Resource/Init/pdf_font.ps
Resource/Init/pdf_main.ps


2015-12-14 10:31:56 +0000
Chris Liddell <chris.liddell@artifex.com>
18e58518812980b09215ae17b8c385cdb46fda19

JPEG/DCT dependency fix

Because we have common code to handle certain aspects of JPEG/DCT encoding and
decoding, we cannot include one without the other.

Add a "top level" sdct.dev which includes both sdcte.dev and sdctd.dev and make
that part of the core graphics lib features.

As our code and the libjpeg code both have considerable common code between
encoding and decoding, the inpact on the executable size is negligible.

Makefile.in
base/lib.mak


2015-12-11 14:02:24 +0000
Chris Liddell <chris.liddell@artifex.com>
1dccf1916e1227e66ffdfbbd0d99c385268f60db

Bug 695576: tidy up xpsprint dependency confusion

Promote the pushing of jobs into the XPS print queue to be a "platform"
feature - i.e. make it a required "gp_" call, with a real one for Windows
(when supporting libs are available) and a dummy for when an XPS print queue
is not available.

This eases the confusion of dependencies and removes the need for platform
specific conditionally compiled code in the xpswrite device code.

base/gp.h
base/gp_nxpsprn.c
base/gp_wxpsprn.cpp
base/lib.mak
base/macos-mcp.mak
base/openvms.mak
base/unix-aux.mak
base/winlib.mak
base/winplat.mak
base/xpsprint.cpp
devices/vector/gdevxps.c
psi/os2.mak


2015-12-11 12:02:41 +0000
Ken Sharp <ken.sharp@artifex.com>
fabc4fb245306177204bf9439424cca33132b6fa

PDF interpreter - fix OutputIntent for device when no Trailer located in PDF (broken)

Bug #696447 "Error message lost with x11 device"

Despite the comment, I believe the X11 device behaviour is correct. We
generally try not to throw PostScript errors when dealing with PDF files,
even badly broken PDF files.

In this case the PDF is so broken we are unable to repair it (Acrobat
can't either), which means we have no Trailer either found or created.
However, we must continue with our processing loop and that includes
processing OutputIntents, if the device supports them.

The X11 device (and the Windows display device amongst others) do *NOT*
support an OutputIntent (its not file based so there's nowhere to put it)
but the ppmraw device, erroneously I believe, does claim to be able to
write an OutputIntent.

This led us into code in writeoutputintents whcih attempted to use the
Trailer without checking if it was present, and so throwing an error.

This commit simply checks if we have a Trailer, and doesn't attempt to
write the OutputIntent if we don't (because the PDF is unusable anyway)


This makes the devices behave the same, even though its not exactly
the fix Marcos wanted.

Resource/Init/pdf_main.ps


2015-12-11 11:02:14 +0000
Chris Liddell <chris.liddell@artifex.com>
e8a5151dcc3a3451a42a294ed7bddbf137ddf518

Bug 696446: only use const strings for param list keys

The original fix replaced uses of strdup() (which caused a memory leak) with
a dynamically allocated temporary string which was freed at the end of
cups_get/put_params().

Unfortunately, as param lists simply take a reference to the key string, this
meant that the contents of the string were overwritten, and indeterminate
after being freed.

Switch to using lists of static const strings.

And add a stern warning to gsparams.h on the subject.

And squash a couple of compiler warnings in the cups code.

base/gsparam.h
cups/gdevcups.c


2015-12-10 16:11:30 +0000
Ken Sharp <ken.sharp@artifex.com>
546d49f920ed3b1d7f8eec26ae1c8d94b7d6fd32

PDF interpreter - don't store ICCBased colour spaces in resolved dicts

Bug #696439 "unable to extract page one special page"

The page in question has nearly 2000 images, most in ICCbased colour
spaces, and large profiles (around 2MB or more). Because of the way we
dereference objects, this led to the ICCbased DataSource (the 2MB+)
being stored in the colour space, which was stored in the image
dictionaries, which were stored in the Page's Resources dicttionary.

The Page's Resources dictionary is not freed until the page is complete
which meant we were storing an awful lot of data. When we exceeded 2GB
(on the 32 bit build) we ran out of memory and mostly stopped rendering
anything further.

This commit alters the image (and shading, which has the same problem)
handling so that if the colour space is an array object, we make a copy
of the dictionary and use that. This leaves the original definition
unresolved in the Page's Resources dictionary, if we should need to use
the object again then we will have the (slight) overhead of needing to
rerun it, but at least we won't be storing gobs of mostly useless data
in the general case.

No differences expected.

Resource/Init/pdf_draw.ps


2015-10-12 18:37:32 +0100
Chris Liddell <chris.liddell@artifex.com>
bcf0e5887c74e3337fcac62addf0de70be9a2cb8

Commit of WOFF font support for GS

Support in Ghostscript is implemented by augmenting the TrueType handling in
the Postscript world. Loading WOFF fonts "stripped" is not supported, except
for the purpose of finding the font name from the name table.

There is also a C implementation in the graphics library which takes a memory
buffer or a stream, and unpacks the WOFF into a TTF in a memory buffer. It
is currently not called.

Resource/Init/gs_cff.ps
Resource/Init/gs_cidtt.ps
Resource/Init/gs_ttf.ps
base/gstype42.c
base/gsutil.c
base/gsutil.h
base/gxfont42.h
base/lib.mak


2015-12-09 18:09:12 +0000
Chris Liddell <chris.liddell@artifex.com>
618d0c07922e47b869cdec48235ff003c791d2e3

Bug 696441: handle numcopies > 1 in bgprint mode.

When numcopies is greater than 1, the device closes and closes and opens
the output file(s) for each copy. In the case of background printing, the
main device opens the output file, and generally expects to close the same
file, but with num_copies > 1 that is not the case.

When shutting down a bgprint "worker" device, copy the file pointer from
the worker device to the main device, so the main device retains a valid
output file pointer.

base/gdevprn.c


2015-11-04 15:47:02 +0000
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
47dd8a92aeb7b574748871127a6621ce9f7abbb9

Fix memory leaks in cups device

Noticed while debugging Bug 694179.

The main leak here is due to the strdup in cups_get_params and cups_put_params.
The code was then refactored to have one exit point to catch the remaining
6K leak.

However, the final 6k is due to the global structure created in
cups_globals_alloc and later freed in cups_globals_free. The free function
call is only done on windows due to a #define WIN32 and not called on a
Linux machine where the server continues to run.

No cluster differences

cups/gdevcups.c


2015-11-04 15:42:53 +0000
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
160665445b3b10da794959e508b5dd800b0592e5

Bug 694179: Fix memory leak in jbig2dec

Ensure the image contents are initialised, so that, if an error occurs, the
image can be safely cleaned up.

No cluster differences.

jbig2dec/jbig2_text.c


2015-09-23 20:35:09 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
24c38f914a24391f880e2fd73423dff9cc9a678f

Bug 694180: Fix memory leak if there is an error while parsing jbig2 global stream.

base/sjbig2.c


2015-12-04 17:46:33 -0500
Chris Liddell <chris.liddell@artifex.com>
fb89b8a3a9f58898402750dbcef43156e54d0118

Bug 695771: multithread/bgprint render may not be complete device shutdown

In some cleanup code, I assumed that by the time that code was called, rendering
would be complete - specifcally, background rendering would be complete.

This may be true when background rendering is one thread, but is definitely not
guaranteed when we have bgprint *and* multithreaded rendering.

Rather nicely, accounting for this actually makes the code tidier.

Also, add a check that we successfully created a clist IFILE object before
storing a value in it.

base/gdevprn.c
base/gxclfile.c


2015-12-04 21:29:05 +0000
Ken Sharp <ken.sharp@artifex.com>
80539e002a8a2feed7a1d34608980c3a0d13dbbc

pdfwrite - fix array dta source mesh shadings

Bug #696433 "Indeterminism with Bug695847b.ps and the pdfwrite device"

The code for emitting a mesh shading in a PDF given floating point
input (array based vertex data, at least) calcul;ates the number of
colour samples by multiplying the number of componentsd in the colour
space by the number of vertices.

However, when applying the max/min clamping from the ranges array in the
colour space, it used the current colour sample index, which obviously
could be much larger than the number of components in the colour space.

This caused us to run off the end of the pranges array and use
uninitialised data to set the colour sample, leading to non-deterministic
(and indeed incorrect) output.

We now pass in the number of components in the colour space and use the
modulus of that with the colour value index to index the pranges array.

devices/vector/gdevpdfv.c


2015-12-01 16:47:47 -0500
Chris Liddell <chris.liddell@artifex.com>
17e2a278e9a4adfd534941813075e428f3ea7966

Make writing TIFF DateTime tag optional.

Add a -dTIFFDateTime option, defaults to "true" (existing behaviour) and
-dTIFFDateTime=false prevents the tag being written to the output file.

Also, document this and the UseBigTIFF option.

devices/gdevtfax.c
devices/gdevtfnx.c
devices/gdevtifs.c
devices/gdevtifs.h
devices/gdevtsep.c
doc/Devices.htm


2015-12-04 17:04:22 +0000
Ken Sharp <ken.sharp@artifex.com>
44c63aecd4d13f47e0f75e74f63f38715ab7ab73

EPSFitPage - fix some kinds of rotation

Bug #696128 "Rendering an EPS to a PNG with -dEPSFitPage and -gWxH sometimes results in blank render"

There was a typo in commit d59e1feb9545b399027907cb2d1a6855c524e0b4 which
prevented proper rotation in some cases. Note that in this particular
case we do *NOT* want to rotate.

Resource/Init/gs_epsf.ps


2015-12-04 07:01:38 -0800
Ray Johnston <ray.johnston@artifex.com>
4703d04a6146904cab9b1b04aee1478e31df52da

Fix bug 696258: Crash with mswinpr2 device due to typo.

There was a typo in win_pr2_getdc was calling gs_strtok with the "last"
parameter being a value instead of a pointer to the buffer.

devices/gdevwpr2.c


2015-11-29 18:12:02 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
237f98e6abb42407466240585b897b5190b68053

Document that the -c option should be specified after other otions (Bug 695293).

doc/Use.htm


2015-11-27 10:08:40 +0000
Chris Liddell <chris.liddell@artifex.com>
e1af9ed039398be924e31179e6b742682f49e772

Bug 689856: CIE cache: account for different sizes of ulong

Handle both 32 bit and 64 bit ulong sizes.

psi/zcolor.c


2015-11-24 11:52:42 +0000
Chris Liddell <chris.liddell@artifex.com>
96d5dc98103b6adab46efa4baeb19535675929b8

Docs: Add words about soon removing DisableFAPI

doc/Use.htm


2015-11-26 20:03:23 -0800
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
5596cc435aec8387ddd2e64437f1f9486f3ee5c6

Fixed call to Luratech JP2_Compress_SetLicense() (Bug 695768).

The Luratech JP2_Decompress_SetLicense() routine was being called instead
of JP2_Compress_SetLicense() in the compression section. Thanks for
Rodrigo Terra for the finding this.

Untested since Ghostscript doesn't use this code.

base/sjpx_luratech.c


2015-11-24 16:54:55 +0100
Tor Andersson <tor.andersson@artifex.com>
d8ee66a742b9dbc006dd69e6049d9acfef4ad89f

xps: Fix warnings.

xps/xpspath.c


2015-11-24 13:10:48 +0100
Tor Andersson <tor.andersson@artifex.com>
86a2f29eddb0addaa1c72bd7967748083fb6be3c

xps: Multiply alpha from opacity attribute with alpha from color attribute.

xps/xpsglyphs.c
xps/xpspath.c


2015-11-24 13:02:09 +0100
Tor Andersson <tor.andersson@artifex.com>
b4393aa83107a484cafc59241eac964fc5a6e560

xps: Support AlternateContent compatibility markup.

xps/ghostxps.h
xps/xpscommon.c
xps/xpspage.c
xps/xpsxml.c


2015-11-20 12:51:09 +0100
Tor Andersson <tor.andersson@artifex.com>
286433913eeaa01d53e5225b524afb56039cdde8

xps: Fix potential memory leak.

xps/xpspage.c


2015-11-20 12:50:52 +0100
Tor Andersson <tor.andersson@artifex.com>
7ab039de8626a3052483aeb806186aaa4079e925

xps: Add more warning messages.

xps/xpsdoc.c
xps/xpstile.c


2015-11-19 15:10:36 +0100
Tor Andersson <tor.andersson@artifex.com>
7ea84e45f743381e2b47d94a3718a400904ba45f

xps: Avoid generating unnecessary linetos for arcs.

xps/xpspath.c


2015-11-19 11:38:55 +0100
Tor Andersson <tor.andersson@artifex.com>
cba41adae8a388156f8e4eae29cbf1cd5a61cd1e

xps: Avoid ctype.h

xps/xpsglyphs.c


2015-11-19 11:34:14 +0100
Tor Andersson <tor.andersson@artifex.com>
40e2a79e7e4c223c4219b12020fde906df5fd91e

xps: Use xps_strlcpy instead of strcpy when parsing colors.

xps/xpscolor.c


2015-11-17 16:54:23 +0100
Tor Andersson <tor.andersson@artifex.com>
100dff645dbb231de77e7b2f347a459490213bef

xps: Check that we have the last piece of multi-part zip entries.

xps/xpszip.c


2015-11-12 16:57:45 +0100
Tor Andersson <tor.andersson@artifex.com>
ef0b983d909787c0a2ace46f61993af84ec32f66

xps: Add special case handling of zero-length dash patterns.

xps/TODO
xps/xpspath.c


2015-11-18 15:43:40 +0100
Tor Andersson <tor.andersson@artifex.com>
0833727c2a2e23daefd2721f64d7fb9e02ee3049

xps: Bail on zip errors instead of returning a part full of garbage.

xps/xpsimage.c
xps/xpszip.c


2015-11-18 15:36:57 +0100
Tor Andersson <tor.andersson@artifex.com>
15a26a58d1cedf0ab2ad7a968ea2ac5a58e48842

xps: Fix uninitialized value.

xps/xpspath.c


2015-11-13 16:33:42 +0100
Tor Andersson <tor.andersson@artifex.com>
7b91a3627f29ab0c831a56bc5585a5895398279e

xps: Various arithmetic and uninitialized value fixes.

xps/xpsgradient.c
xps/xpsimage.c
xps/xpspath.c


2015-11-23 08:05:58 -0700
Henry Stiles <henry.stiles@artifex.com>
ac252acf1dec30c24bbba9adfc3140fb23a41d7b

Tidy up a few comments.

base/gslibctx.c


2015-11-23 07:24:49 -0700
Henry Stiles <henry.stiles@artifex.com>
65ad11d96a83783a71e9e0a2ff8534bf0cdd9864

Fix the gs library context's allocator use.

The gs library context now uses the allocator with which it was
initialized for all memory operations. Previously it used different
allocators, resulting in mismatched alloc/free pairs. For example, the
languages passed in a memory pointer to the heap allocator upon
initialization of the context and then passed in a memory pointer to chunk
allocator when the library context is shut down.

base/gslibctx.c


2015-11-20 13:56:33 -0800
Ray Johnston <ray.johnston@artifex.com>
c8bc794d9e9fe9c03d1519cf2a70f70a2d0784d8

Improve documentation and fixup toolbin/halftone tools

The thresh_remap (previously referred to as linearize_threshold) was
never in the package, so add it in a separate directory, and fix the
reference to it in gen_ordered.c

Add README files for the upper level, for thresh_remap and for the
gen_stochastic directories, so people don't have to read the code to
find the parameters.

Fix gen_stochastic minimum dot logic to actually work, although only
the 2x2 (-m5) parameter was tested. Also change the defaults for the
tolerance, -t, to 10 (1%) and exponential factor affecting choice, -p,
to 2.5 both of which tighten the selection to improve the quality (at
least in my opinion).

toolbin/halftone/README
toolbin/halftone/gen_ordered/gen_ordered.c
toolbin/halftone/gen_stochastic/README
toolbin/halftone/gen_stochastic/gen_stochastic.c
toolbin/halftone/gen_stochastic/gen_stochastic.sln
toolbin/halftone/gen_stochastic/gen_stochastic.vcproj
toolbin/halftone/thresh_remap/README
toolbin/halftone/thresh_remap/thresh_remap.c
toolbin/halftone/thresh_remap/thresh_remap.sln
toolbin/halftone/thresh_remap/thresh_remap.vcproj


2015-11-19 14:16:46 +0000
Chris Liddell <chris.liddell@artifex.com>
ecd8816ca46c15da304d6bc93f79f39d47c51952

Bug 696363 & 696362: wrong error code return.

The FAPI/UFST code was returning a "limitcheck" error when no glyph raster was
available, when it should have been "unregistered".

This caused problems when I added the return code checks to address some
Coverity warnings.

base/fapiufst.c
base/gxfapi.c
psi/zfapi.c


2015-11-19 14:14:27 +0000
Chris Liddell <chris.liddell@artifex.com>
92f236c7f2293db8aeae437ac0800617552d6e63

Bug 696357: correctly check the length of a string

Indeterminism in 34_all.PS: the check on the size of the string containing the
font's CIDMap was incorrect leading to reading off the end.

psi/zfapi.c


2015-11-16 17:26:56 +0000
Chris Liddell <chris.liddell@artifex.com>
0ec425689333b77b9badd8585989e15655d740c1

Bug 696316: Enforce memory alignment for libpng

libpng's inclusion of it's jmp buffer at the beginning of it's private context
requires the allocation to be 16 byte aligned on Win64 (because the jmp
buffer must be 16 byte aligned).

In the libpng callback functions for memory allocationg and freeing enforce
that alignment.

Also, add those callbacks (including the alignment enforcement) to the gdevpng.c
output device.

(Code mostly supplied by Robin!).

No cluster differences.

devices/gdevpng.c
xps/xpspng.c


2015-11-18 10:59:13 +0000
Ken Sharp <ken.sharp@artifex.com>
d368650e9f3e7e6e4af2d840ffa0dd1e161a9694

PDF Interpreter - Handle incorrect /Size in Xref streams

Bug #696365 "Error reading PDF file"

The PDF file is, as usual, invalid. It uses Xref streams and is a
Linearized file, meaning that there are two Xrefs, the first one being
for page 1 (caused by Linearization).

This xref looks like ths:

<<
/Size 12
/Root 30 0 R
/Prev 15073
/Info 28 0 R
/ID[<B6AEC95A19F1E4391AFF6AF538489730><B6AEC95A19F1E4391AFF6AF538489730>]
/Type/XRef/Index[29 39]/W[1 4 1]/Filter /FlateDecode /Length 112
>>

Notice that the Size (the number of entries in the xref) is given as 12
but the Index (starting index + number of entries) gives the size of the
table as 39, starting at index 29.

We were believing the Size, which meant that we created a Xref table
which was too small to hold the actual number of entries.

This commit checks both 'starting index + number of entries in the Index'
and 'starting index + Size' and uses the larger.

NB the xref also contains an entry with an invalid offset, but this does
not seem to cause a problem, presumably the entry is never actually used

Resource/Init/pdf_main.ps


2015-11-17 13:34:45 +0000
Ken Sharp <ken.sharp@artifex.com>
5e8eae05c4629217f87eaab7302ac7b880dd9c7c

Hash CIE spaces to detect matching, cached, ICC profiles

Bug #696355 "Create unique ID for CIE color spaces"

Creating an ICC profile for a PostScript colour space is a performance
hit. Especially (I believe) for CIE spaces. We maintain a cache of ICC
profiles that have been created, but we need a way to identify if a
given, cached, profile matches a newly selected colour space.

There is code already in place for this, but missing the generation of
a unique ID for a space, so that we can find a matching profile, if we
have one cached.

This commit uses the existing MD5 machinery to create a hash from the
PostScript array defining a CIEBased colour space. We then use that hash
as the ID for the space, and check to see if we already have a cached
ICC profile with a matching ID.

This should improve performance on files using CIEBased colour spaces,
especially if they do 'gsave [/CIEBased <<...>>] setcolorspace grestore'
operations, as we will only need to create the ICC profile once.

I've created and manually checked example CIEBasedA, CIEBasedABC,
CIEBasedDEF and CIEBasedDEFG files to see that two identical spaces are
correctly identified as the same and that spaces with even very tiny
differences are correctly identified as different.

No differences expected in cluster test.

psi/zcie.c
psi/zcolor.c


2015-11-16 12:46:18 +0000
Chris Liddell <chris.liddell@artifex.com>
70880b866b06e34e4c078e115001371ae8e9c454

Docs: Remove references to OS X framework

No cluster differences

doc/API.htm


2015-11-16 12:30:59 +0000
Chris Liddell <chris.liddell@artifex.com>
ff6175631e7b8c79849d6de637aaaf5338476d62

Bug 696352: initalise io dev table count variable.

Previously the io device count was only initalised when the library context
was created, but it seems the library context can survive multiple
instances of the interpreter.

Initialise the count variable every time a new io device table is created.

No cluster differences.

base/gsiodev.c


2015-11-16 09:17:19 +0000
Ken Sharp <ken.sharp@artifex.com>
5757d87431c31cf99ea294697382239ab74d424e

graphics library - if pattern x or y size is 0, don't estimate tile size

Inspired by Bug #696351

The bug report in Bug #696351 is ridiculously incomplete and the reporter
seems determined not to provide any real assistance.

However, by some logic and experimentation it did prove possible to
(eventually) reproduce the problem and trace through the code from
pattern creation. (run with a very low resolution, -r10 did it for me)

The crash is caused by attempting to estimate the size of a pattern
bitmap tile, when the pattern has a size of 0 in the y direction. This
is a legitimate value, we simply drop the pattern in this case. Since
we aren't going to render anything, the tile will have a size of 0 so
we can easily short-circuit all this calculation by testing for the tile
being 0 in either the x or y direction and simply returning 0.

No differences expected.

base/gxpcmap.c


2015-11-13 11:55:20 +0000
Chris Liddell <chris.liddell@artifex.com>
e21aae2ee801a6468e44697970d11d4d56d0c6ab

Bug 694237: Handle missing/incomplete TTF glyph lengths

In the case of a broken TTF based CIDFont passing through ps2write (or one of
the pdfwrite paths that requires glyphs to be rendered), we can end up with
a partially complete font structure - in particular, the glyph lengths table
may be incomplete or missing.

We have a couple of fallback options available to get the length of a glyph:
the first is to retrieve the offset of the data for *next* glyph index and
the difference between the two offsets is the length of the glyph of interest.
If that fails (particularly if we are already processing the last available
glyph), we can use the offset to the end of the sfnt data - since the glyph
table is invariably the last table in the sfnt stream.

No cluster differences.

psi/zfapi.c


2015-11-13 08:48:35 +0000
Chris Liddell <chris.liddell@artifex.com>
5aa97eed0f8b17ea0f7138d36d64af505420caa1

Bug 696345: .nativeFontmap when TTF name table is invalid

When building the .nativeFontmap (using fonts retrieved from a platform
specific API - i.e. fontconfig), if we can't read the font name from the
font file, we fall back to using the font name as reported by the API.

But, the code failed to take into account that the operand stack has different
depth depending on whether we were able to read the name from the file or not.

This commit handles that by using a counttomark rather than hard coded stack
depth.

No cluster differences.

Resource/Init/gs_fonts.ps


2015-11-12 17:22:42 +0000
Chris Liddell <chris.liddell@artifex.com>
dfe06d0d8b3f296b908709c22157f7135ed660c7

Bug 694238: init several gs_glyph_info_t structs

In various places we were calling a font's glyph_info which may, or may not
fully fill in the gs_glyph_info_t passed to it, then using the results,
regardless of whether the specific value had been set. Initialize to zeros
for at least consistent results.

No cluster differences.

base/gsfont.c
devices/gxfcopy.c
devices/vector/gdevpdte.c


2015-11-12 17:17:03 +0000
Chris Liddell <chris.liddell@artifex.com>
01cb2de3fbbcfa7c7f809176bb72249831d93b98

Bug 694238: Fix segfault in error during PatternType 1

If the PaintProc of a Type 1 pattern triggers an error after having done one
or more gsaves, we'll try to retrieve the pattern instance from the wrong
graphics state when we attempt the final cleanup.

To address this, store a reference to the pattern instance on the exec stack
which a) guarantees we get the correct pattern instance during cleanup,
and b) allows us to roll back the graphics state stack to the correct point.

No cluster differences.

psi/zpcolor.c


2015-11-13 08:20:39 +0000
Chris Liddell <chris.liddell@artifex.com>
daf28428a76f3a89a9cff9285cb7b0a663a86b63

Coverity: fix some ignored return codes in FAPI

No cluster differences.

base/gxfapi.c


2015-11-12 16:25:54 +0100
Tor Andersson <tor.andersson@artifex.com>
e85900d1814a65918b9c7e90504e25155ae0b9c1

xps: Return with error on encrypted zip files.

xps/ghostxps.h
xps/xpszip.c


2015-11-12 16:27:06 +0100
Tor Andersson <tor.andersson@artifex.com>
9d1c199af467cd1138bf07c6f66a276e26875c99

xps: Fix buffer overflow in xps_parse_color.

xps/ghostxps.h
xps/xpsanalyze.c
xps/xpscolor.c
xps/xpsglyphs.c
xps/xpspath.c


2015-11-12 16:24:30 +0100
Tor Andersson <tor.andersson@artifex.com>
0fa7177163f46c77f7928c520ddc3f90de4c59dc

xps: Fix indeterminism with broken zip files.

xps/xpszip.c


2015-11-12 16:13:05 +0100
Tor Andersson <tor.andersson@artifex.com>
9b4be4d130b37578be55eb6aae4feb8a57c0636d

xps: Fix gradient ordering edge case.

Gradients in XPS code are ordered by offset. If however two offsets are
equal, the order of the colors depends on the sort algorithm instead of
the original order in the document. This is shown e.g. in 2245*.xps:

<GradientStop Offset="0" Color="#ff00ff00" />
<GradientStop Offset="0.5" Color="#ff0000ff" />
<GradientStop Offset="0.5" Color="#ff00ff00" />
<GradientStop Offset="1" Color="#ff00ffff" />

Tracking the original order of gradient stops and always sorting earlier
stops first makes gradient ordering consistent.

xps/xpsgradient.c


2015-11-11 16:59:22 +0000
Ken Sharp <ken.sharp@artifex.com>
bb56dc645039d5a2f376920af1023b7ece801c88

PDF Interpreter - Ignore empty /Kids arrays in AcroForm fields

Bug #696342 "PDF Annotation Error: /rangecheck in --run--"

The PDF file has an AcroForm with a field where the /Kids array is [ ]
This previously caused an error.

Adopting the patch from Martin McNabb with a very slight tweak to issue
a warning if -dQUIET isn't set.

Bizarrely this does exhibit a progression with Bug694429.pdf on the
cluster, even though this code isn't executed......

Its a progression so I'm not going to complain.

Resource/Init/pdf_draw.ps


2015-11-09 10:33:16 +0000
Ken Sharp <ken.sharp@artifex.com>
e174b0553e6e2d3bb641cbede1187dfe7979ae86

PDF interpreter - Allow Shading whose Extend array contains indirect refs

Bug #696338 "Garbled output - File has unbalanced q/Q operators (too many Q's)"

A Shading dictionary contains (bizarrely) an Extend array which has
members which are indirect references instead of simple booleans.

Mad, but legal.....

This commit adds the Extend array to shrdict, which does additional
processing of the Shading dictionary before passing to the graphics
library. In this case we simply dereference the objects.

No differences expected.

Resource/Init/pdf_draw.ps


2015-11-04 16:08:13 -0800
Ray Johnston <ray.johnston@artifex.com>
f330b5d4bdae73f9ca88c04e2a1391800c5da758

Fix Bug 696324 SMask None handled incorrectly by clist writing.

The SMask None special case that is sent using gssmask in the PDF
interpreter when it needs to make sure there is no SMask in place
needs special handling w.r.t. the clist cropping logic since we do
want to write it, but there won't be a endtransparencymask to
perform the pop of the cropping stack.

base/gdevp14.c


2015-11-02 15:17:45 +0000
Chris Liddell <chris.liddell@artifex.com>
142820542bb883e304788bd4dcc2833b6486cf6d

Bug 693011: stop PSD devs writing multiple images to one file

PSD does not support multiple pages/images per file. Previously the PSD devices
would allow writing multiple image to the PSD output file, and end up with an
invalid PSD file.

The devices will now check what the output name file has the "%d" formatter to
so each page written to a separate file, and if it isn't there, they will
generate an error message and error code if an attempt is made to produce
more than one page.

To be clear: and single page input file will complete without error without the
"%d" formatter.

No cluster differences

base/gdevdevnprn.h
devices/devs.mak
devices/gdevcmykog.c
devices/gdevpsd.c
devices/gdevpsd.h
doc/Devices.htm


2015-11-02 15:16:26 +0000
Chris Liddell <chris.liddell@artifex.com>
4c6f80586f047561c5ed4e2f9d3a307c2ca6099f

Add Art/Bleed/Trim boxes to pdf_info.ps

No cluster diffs.

toolbin/pdf_info.ps


2015-11-03 19:25:38 +0000
Robin Watts <robin.watts@artifex.com>
3d2d28598857d94b4c4683fe3ae5a0a71fdfe17d

Bug 696305: Ensure subdivided lines are not dropped

While walking the contour in scan_contour, we use
gx_flattened_iterator to cope with flattening curves.
Each time we call gx_flattened_iterator__next we get the
next section of the line out.

To avoid overflows in huge lines/curves the iterator splits
segments into 4. This was showing up a problem in this code
whereby a vertical line from 0x80xxxxxx to 0x7fxxxxxx was
being split into 4. 2 of these sub-divided lines crossed the
region of interest, but only the first of them was being
considered for addition into the active line list.

The fix here is simply to ensure that we continue to loop
through the iterator for the curve if we fail to add anything
from it.

It is possible that there are further optimisations possible
here (see the FIXMEs in the code), but the changes I've made
should be safe and minimally invasive.

Many thanks to Chris for doing the legwork in tracking the
cause down!

base/gxfill.c


2015-11-03 13:41:20 +0000
Robin Watts <robin.watts@artifex.com>
35148ae2ffd20e949e01da427a82a6eee20b7127

Bug 696305: Revamp scan_contour

As part of the investigation into bug 696305, rejig the functions
around 'scan_contour' for clarity.

Firstly, we pull the usage of contour_cursor into scan_contour.
Rather than having the caller set part of the structure up, and
then pass it in, have the caller pass in the required parts and
let all of the structure handling be done within scan_contour.
This improves the modularity of this code at least.

Secondly, rather than having the contour_cursor structure contain
a pointer to a gx_flattened_iterator allocated separately on the
stack, have it be part of the structure. This saves lots of
dereferencing (which might help with repeated reads due to C's
pointer aliasing) and is clearer to read.

Thirdly, we break the if's into more deeply nested things. This
results in more indented code, but it avoids us having to retest
the same variables several times, and may give us some improvement
in runtimes.

Firstly, add some comments. This is a break with tradition in
this code. These comments describe my understanding (however
limited) it may be of what the code is doing.

base/gxfill.c
base/gxfill.h
base/lib.mak


2015-11-03 09:07:27 +0000
Ken Sharp <ken.sharp@artifex.com>
7fbc6ddf76a5590252dc25642ae13da15f2a92db

pdfwrite - prevent selection of inappropriate Downsample filter

Bug #696322 " GS produces empty PDF with /MonoImageDownsampleType /Bicubic"

We can't use anything except Subsample for Monochrome images, because
anything else will turn them into grayscale images.

This commit prevents the selection of any downsampling filter if the
image is monochrome, using the default Subsample.

No differences expected

devices/vector/gdevpsdi.c


2015-11-03 08:21:37 +0000
Chris Liddell <chris.liddell@artifex.com>
de66bba6a320e7b263260205637976c734805909

Fix PCL/XPS Windows builds from previous commit

A typo and a missing header caused the Windows PCL/XPS builds to fail.

No cluster differences.

pcl/pl/plwmainc.c


2015-11-02 12:37:37 +0000
Chris Liddell <chris.liddell@artifex.com>
6b1b1d72ed6432bc29b719e186ea8ebd0b26de8a

Expunge references to e_* style errors

No cluster differences

base/fapibstm.c
base/gp_unifs.c
base/gpcheck.h
base/gsiomacres.c
base/sjpeg.h
base/strmio.c
contrib/japanese/gdevdmpr.c
contrib/pscolor/test.c
devices/vector/gdevpdfr.c
devices/vector/gdevpdfx.h
devices/vector/gdevpdtt.c
doc/API.htm
doc/C-style.htm
doc/Develop.htm
pcl/pcl/pcommand.h
pcl/pl/plparse.h
pcl/pl/plwmainc.c
toolbin/halftone/gen_stochastic/gen_stochastic.c


2015-10-28 10:33:43 +0000
Chris Liddell <chris.liddell@artifex.com>
ac5d49f03f44aa45ba9a0788bbe351b0510a5bcc

Coverity #94560: Protect from possible null ptr deref..

Also ensure we always write a character to the character set.

No cluster differences

base/wrfont.c
base/write_t2.c


2015-11-01 09:43:04 -0800
Michael Vrhel <michael.vrhel@artifex.com>
6c28ba38b907ec1c6a5755669ea0ecb55b95f8cc

Bug 694982: DeviceN ICC Source Profiles

The use of -sDeviceNProfile was broken when we introduced
delayed initialization of the ICC profiles. This fixes
the issue and adds a ReadMe to the example to explain why
the orange and green colorants will be swapped from what
happens when -sDeviceNProfile is not used.

base/gsicc_manage.c
toolbin/color/icc_creator/example/README.txt


2015-10-31 12:24:01 +0000
Ken Sharp <ken.sharp@artifex.com>
243614398b7bf3e8c4d080de7f8bbcb7436472cf

Replacement fix for commit 487ed6

Bug #696306 was originally fixed in commit 487ed6. After talking about
it with Chris, it became clearer why I was unable to intercept the
broken font where I wanted. gs_type1.ps contains a redefinition of
.buildfont1, and this redefinition does not properly preserve the
stack in the event of an error.

If this was a simple procedure that would be understandable, but the
redefinition is of a C operator, so not preserving the stack is actually
wrong.

The commit here corrects that problem, which enables me to intercept the
error much later in the page rendering and do a considerably better job
of correcting the problem. This now renders as per Marcos' Acrobat
screenshot (but unlike mine).

This fix should be used in preference.

Resource/Init/gs_type1.ps
Resource/Init/pdf_font.ps


2015-10-29 14:29:48 -0700
Michael Vrhel <michael.vrhel@artifex.com>
c938315af2a0d4d90a03a762d19d31bf35b47b07

Bug 695042; -dUsePDFX3Profile with -dNumRenderingThreads issues

When a PDF file has on Output Intent (OI) profile and we want
to use it as the device profile or the proof profile, it is
set for the device through a call from the interpreter in
zset_outputintent. Unlike other profiles for the device,
this profile is not a device param that is set with get/put
params of a file name. Instead the profile is inside the source
file that is being rendered.

When the threads are set up in setup_device_and_mem_for_thread
the icc profiles are set through put and get param calls. Since
the OI profile is not available in this manner, this fails.

This fix detects the presence of the OI profile during
setup_device_and_mem_for_thread and clones the profiles.
Doing a straight reference to the profile instead of cloning
is problematic if the CMM is not thread safe in its use
of the profile handles (which is true for LCMS), hence the
cloning process.

In addition, in this commit a non-ascii character was added to
the special name for the OI profile to help avoid issues with
an actual profile being named with our special key word.

base/gsicc_manage.c
base/gsicc_manage.h
base/gxclthrd.c
base/lib.mak


2015-10-30 11:58:21 +0000
Ken Sharp <ken.sharp@artifex.com>
487ed6d3b5fabbe21c23da288fbf020f49a28fae

PDF interpreter - handle broken type 1 fonts with no Private dict earlier

Bug #696306 "Incomplete rendering of PDF file"

The embedded type 1 font 'Consolas' is broken. The eexec encrypted
portion of the font suddenly ends during a glyph description. This means
that the Private dictionary is never added to the font dictionary but is
instead left on the operand stack. Where the PDF interpreter removes it
in order to avoid other errors.

The error actually occurs inside .buildfont1, but despite efforts it
proved impossible to deal with the error at that point. This was due to
all the code already in place to deal with other errors while handling
broken PDF files. It wasn't possible to address this particular problem
without breaking other (admittedly invalid) PDF files.

This commit checks the font dictionary for the presence of a Private
dictionary before returning from readtype1 and if the Private dict is
not present it instead returns a null object, which signals the calling
code to attempt to load the font from another source.

No differences expected

Resource/Init/pdf_font.ps


2015-10-29 09:59:13 -0700
Marcos H. Woehrmann <marcos.woehrmann@artifex.com>
e0498dcff844d119ee51873394aef93be5bfffc6

Fix for transparency_example.ps to set the number of spot colors, Bug 695277.

From Michael Vrhel:

The ps file transparency_example.ps failed to set the number of spot
colors on the page. This information is expected to be provided
for the pdf14 device by the PDF interpreter when we are dealing with the
separable devices (e.g. psdcmyk, tiffsep)

examples/transparency_example.ps


2015-10-24 17:12:46 +0100
Shailesh Mistry <shailesh.mistry@hotmail.co.uk>
65b10e0fc85dc791848dbd43dbcf673669c1fc4c

Bug 696222: Fix segfault due to image buffer being allocated too small leading to a memory over run.

Also updated pclr functionality to detect BitsPerComponent early and so
allowing the signature image to be decoded correctly.

Signed-off-by: Henry Stiles <henry.stiles@artifex.com>

Resource/Init/pdf_draw.ps
base/sjpx_luratech.c


2015-10-23 10:11:14 -0700
Michael Vrhel <michael.vrhel@artifex.com>
d2c0a7d63b5a2b9b5e99883b89fc03b12f60b77d

Handle NULL returns from gsicc_profile_new.

Fix for bug 696268. Also clean up some of the other error handling
in gsicc_create.c, gsicc_manage.c and gsciemap.c

base/gsciemap.c
base/gsicc_create.c
base/gsicc_manage.c
psi/zicc.c


2015-10-28 11:08:20 -0700
Michael Vrhel <michael.vrhel@artifex.com>
1a7740b8a021e2962964fcaf69dd0d95e1af5888

Fix for crash in Bug 696290

The planar devices were not getting the bit depth arrays set up.
This was causing an issue during the gradient fill for high level
colors where we were trying to make a smoothness decision during
the line fills. Problem occurred for all the existing planar devices.

devices/gdevcmykog.c
devices/gdevpsd.c
devices/gdevtsep.c


2015-10-27 10:08:57 -0700
Michael Vrhel <michael.vrhel@artifex.com>
0e95a71f661323214a4206f534068301b441dbe3

Fix for bug 696227.

The color usage information for the clist bands was not getting
updated for certain cases where we are doing trapezoid fills.

base/gxclrect.c


2015-10-26 11:01:16 -0700
Michael Vrhel <michael.vrhel@artifex.com>
aaefd493e35b75e761e542713d18cecabfe96593

Add proper check for gx_dc_type_data_devn color type in shading color linearity

When we added the gx_dc_type_data_devn to support the Device N planar devices,
we failed to update the linearity check for shadings when we draw to these
devices. This resulted in the linearity check always failing which resulted
in extreme decomposition of the shading beyond what was needed.

Fixes bug 696290. Note that a couple files like 442-01.ps will have some minor
shading artifacts visible that were not there before for the psdcmyk device.
I checked, and these same artifacts are visible in other CMYK devices (e.g. tiff32nc)
for this file.

These issues are different than what was addressed by this fix and should not
be considered a regression by this commit. That said, we may want to open a bug
related to those issues.

base/gscspace.c


2015-10-26 08:32:32 +0000
Ken Sharp <ken.sharp@artifex.com>
dc5cae259b8f5b7dc4b6105f60b56af72fed235a

check gp_fseek_64 return value and action it, silences Coverity CID 118348

devices/vector/gdevpdfp.c


2015-10-22 12:27:50 -0700
Ray Johnston <ray.johnston@artifex.com>
59c818b145474f6e8a8dc315adaaa308f8e53aac

Fix multi-threaded rendering crash on Windows. Bug 696254.

The use of fseek(...SEEK_END)...ftell to determine the file size is not
thread safe because reading changes the current position. On Windows, the
ReadFile changes the position of the 'fd' attached to the stream and handle,
and the ftell uses 'lseek(fd, 0, SEEK_CUR)' to get the current position
which may have moved due to reads on other threads.

On unix, similar conditions can occur sharing the FILE * stream. Also on
unix, we must assume that without PREAD support, we cannot share the file
descriptor since reading requires "ftell..seek..read..seek" sequences that
are not thread safe without locking (that is not yet implemented, and may
impact performance).

Maintain the filesize while writing the file in the IFILE wrapper stucture
and use that for the file size instead of fseek..ftell to avoid the position
change that could happen on the clist file due to a read by a different
thread on that same file fd.

This was a rare problem because only cl_cache_read_init used the seek..tell
mechanism to get the filesize, and this only happens in a thread on the
first read (to either the bfile or the cfile) which is a narrow window.

base/gp_unifs.c
base/gxclfile.c


2015-10-23 11:16:20 +0100
Chris Liddell <chris.liddell@artifex.com>
fb1154ad98a2826679be009bf92576aaec99a4dd

Bug 694149: Move copied font init earlier.

When copying a font (for high level device use) we have to initialize at least
some of the gs_font structure contents so that, in the event of a later fail,
the font can be cleaned up, finalized and freed correctly.

No cluster differences.

devices/gxfcopy.c


2015-10-23 10:16:11 +0100
Chris Liddell <chris.liddell@artifex.com>
feafe5e540a0545ec5d28f3f66bb542056bba495

Bug 696301: add gserrors.h to the installed files

for the so-install target.

Also remove a spurious (copy'n'paste error) comment.

No cluster differences

base/gserrors.h
base/unix-dll.mak


2015-10-22 18:03:56 +0100
Chris Liddell <chris.liddell@artifex.com>
3ff82bf9367e36cf582811634cc37831907c439c

Bug 694147: add stack checks in Type 1 charstrings

Add checks for the both the operand stack and the 'control' stack during
interpreting of Type 1 charstrings.

No cluster differences

base/gstype1.c
base/gxtype1.h


2015-10-22 16:13:20 +0100
Chris Liddell <chris.liddell@artifex.com>
3be1a95a2b6e5a8a9c7472d077cdd454315a40fd

Bug 696102: use gs_abort() instead of forced segfault

In the garbage collector, in a condition that should not occur, gs_abort()
is the correct way to bail out.

No cluster differences.

psi/isave.c


2015-10-22 16:11:57 +0100
Chris Liddell <chris.liddell@artifex.com>
c92c06899aab159ad2f60f69d3ce76ecdb03caff

Add more details about COMPILE_INITS trade-offs

No cluster differences

doc/Make.htm


2015-10-22 15:35:57 +0100
Chris Liddell <chris.liddell@artifex.com>
f435300f1647be90380554b23099ae6dd047c6c0

Tweak for CIDSystemInfo indirect object fix

So these will be handled for all CIDFont types, and not just those with TTF
outlines.

No cluster differences.

Resource/Init/pdf_font.ps


2015-10-22 10:35:50 +0100
Ken Sharp <ken.sharp@artifex.com>
34dba299b2f76c6ee6254950b5d32fd4026bd030

Typo in .gitattributes, corrected eof to eol. Try and get line endings
consistent in ghostpdf.inf

.gitattributes
lib/ghostpdf.inf


2015-10-22 10:33:15 +0100
Ken Sharp <ken.sharp@artifex.com>
0dd90a3cef222b7195459ee16dfcba0093c24b55

remove the accidentally added ghostpdl.inf

lib/ghostpdl.inf


2015-10-22 10:13:33 +0100
Ken Sharp <ken.sharp@artifex.com>
3e1089d53b8b44b9c0c0dcdcc493b7290f11773e

Try again to get Git to change the ghostpdf.inf file

lib/ghostpdf.inf


2015-10-22 10:02:36 +0100
Ken Sharp <ken.sharp@artifex.com>
0baeb24527e4d700cd2e0b0de30cfb58a9b3ba9c

Touch the ghostpdf.inf file simply in order to get it to be updated in Git

We need the ghostpdf.inf file to have consistent line endings across
platforms (see commit c46f8651e6bea69b76f84dd58568c18fc73ade7d) simply
updating the .gitattributes file doesn't seem to actually alter the file.

lib/ghostpdl.inf


2015-10-22 09:48:02 +0100
Ken Sharp <ken.sharp@artifex.com>
c46f8651e6bea69b76f84dd58568c18fc73ade7d

Make all '.inf' files have DOS/Windows line terminators

This means that when checked out onto a Linux platform for building releases
the line endings will still be 'correct' for DOS/Windows platforms and,
more importantly, will be the same as was used when creating any '.cat'
files which are used for digital signing.

.gitattributes


2015-10-21 11:11:43 -0700
Michael Vrhel <michael.vrhel@artifex.com>
268bc03cbf664cad907f7a1f8ee9be7db93f9405

Fix some of the paths in the visual studio project

This fixes the paths for the openjpeg files. I don't see the jpegxr content in the project.
Also the jpeg files need to be cleaned up. Some of the refs in the project are not really
there.

windows/ghostscript.vcproj


2015-10-21 10:55:12 -0700
Michael Vrhel <michael.vrhel@artifex.com>
3d4ade241415faeed82e8cc355f58c58d6b0b886

Add name space definitions for Open XPS

With this commit we should be rendering Open XPS content. Fix for bug 696272

xps/ghostxps.h
xps/xpsdoc.c
xps/xpsxml.c


2015-10-21 10:19:26 +0100
Ken Sharp <ken.sharp@artifex.com>
1f0ad334a81e871dbbbc9929928ec025c616926a

PDF interpreter - check for (illegal) non-dict XObjects when scanning spot colours

Bug #696288 "Error: /typecheck in --run-- writing psdcmyk file"

The PDF file contains a /Pages dictionary which includes a /Resources
dictionary, this is consulted if a page calls for a resource which isn't
defined in the page's own Resources dictionary.

Unfortunately the XObject dictionary defined in this resource contains a
reference to an object which is not an XObject.

When scanning for transparency we deal with this (and ignore it) but when
scanning for page spot colours, we do not, resulting in a typecheck error.

This commit adds checking the XObject type when scanning for page spot
colours, and ignores anything which isn't a dictionary.

No differences expected.

Resource/Init/pdf_main.ps


2015-10-21 09:20:42 +0100
Ken Sharp <ken.sharp@artifex.com>
56aa405c6d7913701091ce58370679b571690d82

PDF interpreter - ignore indirect references to invalid object number 0

Bug #696289 "**** Unrecoverable error in ref! writing PDF file"

The Outlines tree is referenced indirectly as "0 0 R" which is invalid
(object number 0 is reserved). The resolveR routine which resolves indirect
references checks the validity of the object number but was checking for a
value *less* than 0, when it should have been less than or equal.

This commit alters the lt to le, which allows the file to be processed, of
course there are no Outlines present since those were originally broken.

Note this only exhibits with high level devices because rendering devices
cannot usefully use the Outlines tree, and ignore it.


No differences expected.

Resource/Init/pdf_base.ps


2015-10-19 16:35:51 -0600
Henry Stiles <henry.stiles@artifex.com>
3777fa7d9a00158ed2b84de1b547b5fe4a8241dd

Undo mistakenly added debug code from the last commit.

base/gsalloc.c


2015-10-19 15:59:57 -0600
Henry Stiles <henry.stiles@artifex.com>
e0ce584138cbc37c91e757a18d9946b02d3abd03

Fix crash in language switch build introduced by an API change in
ghostscript argument processing.

The language switch system is being reworked but it is nonetheless
useful to have the old design working at least for the time being. It
looks as though earlier revisions of arg_init() supported a null
terminated list, now the function reads all the arguments specified by
"argc". The language switch build used a null terminated list smaller
than argc resulting in dereferencing null in arg_init().

Also remove the business about reading options from a file, certainly
not worth the distraction of reading it.

base/gsalloc.c
gpdl/psi/psitop.c


2015-10-16 14:34:08 +0100
Ken Sharp <ken.sharp@artifex.com>
fe1c025dcbaef436b4a45e0a0bcb4af4d98eefde

Correct some out of date information regarding ColorConversionStrategy

The PDF/A and PDF/X sections of the documentation contained some out of
date settings. The main body of the text remained correct.

doc/Ps2pdf.htm


2015-10-14 13:54:01 +0100
Chris Liddell <chris.liddell@artifex.com>
e126995d6327788ddac7fd99f55db3c1603beea7

Bug 696271: Fix a load of makefile dependencies.

A large number of targets weren't depending on the makefile in which they were
defined.

Almost no targets were dependent on the top level makefile.

A significant number of targets were missing the "MAKEDIRS" dependency (which
is specific to GNU make as an order-only prerequisite).

No cluster differences

base/expat.mak
base/fapi_bs.mak
base/freetype.mak
base/gs.mak
base/ijs.mak
base/jbig2.mak
base/jpeg.mak
base/jpegxr.mak
base/lcms2.mak
base/lcups.mak
base/lcupsi.mak
base/ldf_jb2.mak
base/lib.mak
base/lwf_jp2.mak
base/msvclib.mak
base/msvctail.mak
base/openjpeg.mak
base/pcwin.mak
base/png.mak
base/tiff.mak
base/unix-aux.mak
base/unix-dll.mak
base/unix-end.mak
base/unixinst.mak
base/unixlink.mak
base/winlib.mak
base/winplat.mak
base/zlib.mak
contrib/contrib.mak
cups/cups.mak
devices/contrib.mak
devices/devs.mak
pcl/pcl/pcl.mak
pcl/pcl/pcl_top.mak
pcl/pl/pl.mak
pcl/pxl/pxl.mak
psi/int.mak
psi/msvc.mak
psi/os2.mak
psi/winint.mak
xps/xps.mak
xps/xps_gcc.mak
xps/xps_msvc.mak


2015-10-14 15:23:06 +0100
Ken Sharp <ken.sharp@artifex.com>
74ba28a80804f82aaa68682733c7d7a3cd5f9cbd

pdfwrite - guard against NULL pointer dereference and correct a loop

Bug #696275 "-dFastWebView parameter crashes Ghostscript"

This is a twofold fix. A Coverity static analysis fix added some return
checking, but this happened inside a faulty loop, the code should not have
been executed. Because the return value wasn't checked, this didn't cause a
problem......

Checking the return value meant that we returned an error to the caller, and
an oversight there could lead to us dereferencing a pointer which had not
been allocated.

This commit fixes both of these problems.

No differences expected.

devices/vector/gdevpdf.c


2015-10-14 09:50:40 +0100
Chris Liddell <chris.liddell@artifex.com>
c6fa28f20c464c4badb2579b6bf8dfd0c7cc0230

Bug 696267: augment DroidSansFallback.ttf

Specifcally to add the Yen symbol, but adds any glyphs in DroidSans.ttf not
present in DroidSansFallback.ttf

One minor cluster change - 959_-_cannot_search_for_japanese.pdf

Resource/CIDFSubst/DroidSansFallback.ttf


2015-10-13 08:32:26 +0100
Ken Sharp <ken.sharp@artifex.com>
1ebc998c9e6e18468a64210ed5da091e765cef1c

Squash a compiler warning

I hadn't realised but the 'setup_fn' is a fixed 256 byte character array
rather than a char pointer, so there's no point for testing it being
non-NULL.

Of course, having the filename be a fixed length array has other implications
for buffer overruns.....

devices/gdevrinkj.c


2015-10-12 16:40:10 +0100
Ken Sharp <ken.sharp@artifex.com>
5571ddfa377c5d7d98f55af40e693814ac287ae4

prevent rinkj device crash when misconfigured (no SetupFile)

Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"

The rinkj device requires a SetupFile to be given as a device parameter,
however it doesn't actually check to see if one is given, and just tries
to open the filename, with a predictable crash when none is given.

Here we check the filename and attempt to ensure it is both present and
minimally valid.

No differences expected.

devices/gdevrinkj.c


2015-10-12 16:38:09 +0100
Ken Sharp <ken.sharp@artifex.com>
1bdbe4f87dc57648821e613ebcc591b84e8b35b3

Ensure plib devices always use the clist

Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"

the plib* class of devices only work if clist is present, but previously
they left the banding_type set to 'auto', which meant that under some
conditions we did not use the clist, leading to a seg fault.

This commit simply forces banding_type to be 'BandingAlways'.

No differences expected.

devices/gdevplib.c


2015-10-12 16:36:11 +0100
Ken Sharp <ken.sharp@artifex.com>
007bd77d08d800e6b07274d62e3c91be7c4a3f47

Guard against NULL 'base' for non-clist devices

Bug #696246 "Ghostscript 9.18 with -dFirstPage/-dLastPage fails for ijs and some x11 devices"

This is actually for the plib device. This device is currently (this will
change in the next commit) set to BandingAuto, despite the fact that the
device only works in banding mode.

This can lead to use arriving in gdev_mem_open_scan_lines with all of
mdev->bitmap_memory, mdev->line_pointers_memory and mdev->base being set to
NULL. The code didn't check and assumed that mdev->base was valid, which
led to a later seg fault.

Here we just check to make sure it isn't NULL and return an error if it is.
This doesn't prevent the possibility of garbage uninitialised values, but
there's not much we can do to check that at this stage, devices are supposed
to be initialised to 0 so this 'shouldn't' happen.

No differences expected.

base/gdevmem.c


2015-10-09 10:04:17 +0100
Chris Liddell <chris.liddell@artifex.com>
92f91de4a43e164602f2c219f895006347db958c

Bug 696232: apply metrics for PCL TTF fonts.

Specifically, metrics for Format 1 Class 2 glyph data.

Several PCL/PXL files show differences, most are not really visible without
pixel level comparisons, a very few are (mostly subtle) progressions.

base/fapi_ft.c
base/gxfapi.c
pcl/pl/plchar.c
pcl/pl/plchar.h
pcl/pl/plfapi.c


2015-10-09 12:54:44 +0100
Chris Liddell <chris.liddell@artifex.com>
95553954b8d150e847090ec03db3b10a998e82be

Bug 696246: patch the memory manager fields for sublassed devices.

When we subclass a device, we were patching the "visible" type field - that is,
the one referenced directly in the device structure. We were not patching
the type information in the memory object header so, in particular, the
garbage collector could end up calling the wrong methods for the subclassed
device.

No cluster differences.

base/gdevdflt.c
base/lib.mak


2015-10-09 10:54:10 +0100
Chris Liddell <chris.liddell@artifex.com>
b68e05c3b78c19ae06003281adaa2736cb53e605

Bug 696246: devijs account for device sublassing.

The IJS device wasn't coping with the possibility it had been subclassed.

No cluster differences

devices/gdevijs.c


2015-10-08 15:02:17 +0100
Chris Liddell <chris.liddell@artifex.com>
d39382efae340a29cd5a502b52d135f63f9202ce

Add configure and makefile stuff for isinf() and isnan()

Bug #696248 related.

Makefile.in
configure.ac


2015-10-08 13:54:50 +0100
Ken Sharp <ken.sharp@artifex.com>
5411d274b19067bec99189dd0a956432d619c80e

PS interpreter - check for floating point exceptions in mul, div and add

Bug #696248 "gs9.18 crash on display of nan; also poor handling of inf"

The mul, div and add operators did not detect invalid results (infinity or
non-a-number). This is likely because there is no guaranteed portable
method for detection of these prior to C99.

Here we add checks for this results using the C99 extensions isnan() and
isinf(). These are guarded by #ifdef so that they do not cause compilation
problems on compilers that don't support them. Additionally add support for
early versions of Microsoft Visual Studio which used somewhat different
names for these functions.

This code requires some changes to the configure scripts on Linus in
order to enable it.

On systems which do not support isnan() and isinf() there will be no change,
we will continue to not report errors in ths case.

No differences expected.

base/gssprintf.c
base/math_.h
psi/zarith.c


2015-10-07 09:26:05 -0600
Henry Stiles <henry.stiles@artifex.com>
33f782ee9e09fd840d0d50598db491e5b8a951f5

Fix Bug #696242: PCL should be the default implementation when
building with XPS.

pcl/pl/plimpl.c


2015-10-07 09:33:00 +0100
Ken Sharp <ken.sharp@artifex.com>
ddda7e89bb0bf35cec575c54b19fa8ba3608d8f7

PS interpreter - fix a buffer overrun in '=='

Since changing the implementation of sprintf we now have a situation
where %g can return > 50 bytes of data for a INF. In obj_cvp we define a
fixed size buffer on the heap to receive this, but only 50 bytes wide, so
the buffer overflows and we get a crash.

Increased the size of the buffer well past the maximum possible return
size from sprintf.

No differences expected.

psi/iutil.c


2015-10-06 17:36:27 +0100
Chris Liddell <chris.liddell@artifex.com>
b3c0f7279a34836276df5126a0d4a7a1abd00977

Add a missing dependency for the gs romfs file

psi/psromfs.mak


2015-10-05 13:15:28 +0100
Ken Sharp <ken.sharp@artifex.com>
0db2e3063957b94ee331da09369a9e4116c3d9c1

pdfwrite - cater for forms with negative bounding boxes

When setting a clip for forms, we were not accounting for the possibility
of a form which was wholly negative in either or both dimensions.

Here we permit that and create a better clip.

No differences expected.

psi/zform.c


2015-10-01 13:37:43 +0100
Ken Sharp <ken.sharp@artifex.com>
a7a09c72cd84b539914d97ceafd02673f0dd32f9

pdfwrite - prevent NULL pointer dereference

Bug #696234 " Regression: segfault with pdfwrite starting with 17131c7a7fdf9d8537c4715e538c49b29c8945a8"

When trying to find an object in the resource chains using an ID, we can
encounter resources which have been cancelled. These have no object (it has
been freed) so trying to dereference the object can cause a SEG fault.

I did try to free the resource as well, when cancelling it but that spun
off into a maze of complications involving the garbage collector. It seems
that 'something' was maintaining a pointer to those structures, so freeing
them caused all kinds of relocation/free problems.

Its a lot easier just to prevent dereferencing the pointer.

No differences expected.

devices/vector/gdevpdfu.c


2015-09-30 09:43:44 +0100
Ken Sharp <ken.sharp@artifex.com>
38dd52355037ce88c21bad94bff0df04d71ffc8b

pdfwrite - improve tiny text matrix clamping in 53ac1eca93ac13fead4c4ab8ced0faeee1ee517c

Use fabs instead of abs on the matrix elements, and allow individual
scaling for each element so that clamping to a minimum value can vary for
each element.

No diffrences expected.

devices/vector/gdevpdts.c


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

Contents of CIDSystemInfo can be indirect references

Cope with that....

No cluster differences.

Resource/Init/pdf_font.ps


2015-09-28 22:44:30 +0100
Chris Liddell <chris.liddell@artifex.com>
c874900bf0c184bd61586acfb6f4ebb5a007f730

Improve initalization of the gdevplib device.

Tweak so it uses appropriate macro, eliminating warnings, and hopefully making
long term maintenance easier.

No cluster differences.

devices/gdevplib.c


2015-09-28 09:53:55 +0100
Chris Liddell <chris.liddell@artifex.com>
da2038b2040827f9f29faa43266477f73d83c043

Bug 696229: initialize clist color space validity.

The clist uses a stack variable to hold the device color. Valgrind reports
that the ccolor_valid entry in the device color can remain unset, so set
it to invalid when the initialize the device color to "unset".

Also, add a PACIFY_VALGRIND memset so pattern bitmap buffers are fully zeroed
on allocation - stops valgrind getting upset about writing and reading back
uninitialised (padding) bytes to/from the clist.

No cluster differences.

base/gdevmem.c
base/gxclrast.c


2015-09-29 14:25:07 +0100
Ken Sharp <ken.sharp@artifex.com>
53ac1eca93ac13fead4c4ab8ced0faeee1ee517c

pdfwrite - ensure we don't write non-zero matrix elements with too tiny a value

Bug #696228 "Regression: error starting with 70b442162ff8f3d40595d0eb9fb365d341139ee2"

The change noted causes the PDF interpreter to replace degenerate text matrices
with a very tiny scaling matrix. However, when writing this back through
ps2write, we also take the size of the font into account, and bake this
into the matrix.

If the font size was less than 1 this could lead to us writing a value too
small for printf's '%g' format, and it ended up being written as zero, which
caused the error with the ps2write output.

This commit checks each of the array elements to see if they are non-zero, but
have a value so small that they will *become* zero when written out. If this
happens we recalculate the scale so that the minimum value is emitted. The
value is so small anyway that this should not cause a perceptible difference.
We *don't* do this for the Tx and Ty values as we want these to be correct
and it doesn't cause a problem if these are 0.

No differences expected.

devices/vector/gdevpdts.c



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 <