2004-11-20 04:44 Ralph Giles

Propagate release date to all documentation.

[doc/API.htm 1.47, doc/Bug-form.htm 1.43, doc/Bug-info.htm 1.42, doc/C-style.htm 1.49, doc/Commprod.htm 1.35, doc/Copying.htm 1.33, doc/DLL.htm 1.37, doc/Deprecated.htm 1.14, doc/Details8.htm 1.13, doc/Develop.htm 1.142, doc/Devices.htm 1.83, doc/Drivers.htm 1.51, doc/Fonts.htm 1.44, doc/Helpers.htm 1.37, doc/History1.htm 1.33, doc/History2.htm 1.33, doc/History3.htm 1.33, doc/History4.htm 1.33, doc/History5.htm 1.35, doc/History6.htm 1.50, doc/History7.htm 1.38, doc/History8.htm 1.18, doc/Htmstyle.htm 1.38, doc/Install.htm 1.48, doc/Issues.htm 1.45, doc/Language.htm 1.89, doc/Lib.htm 1.37, doc/Maintain.htm 1.44, doc/Make.htm 1.82, doc/New-user.htm 1.54, doc/Projects.htm 1.61, doc/Ps-style.htm 1.31, doc/Ps2epsi.htm 1.35, doc/Ps2pdf.htm 1.73, doc/Psfiles.htm 1.56, doc/Readme.htm 1.60, doc/Release.htm 1.88, doc/Source.htm 1.33, doc/Tester.htm 1.33, doc/Testing.htm 1.31, doc/Unix-lpr.htm 1.33, doc/Use.htm 1.123, doc/Xfonts.htm 1.33, doc/gs-vms.hlp 1.31, man/dvipdf.1 1.31, man/font2c.1 1.31, man/gs.1 1.32, man/gslp.1 1.31, man/gsnd.1 1.31, man/pdf2dsc.1 1.30, man/pdf2ps.1 1.32, man/pdfopt.1 1.30, man/pf2afm.1 1.31, man/pfbtopfa.1 1.32, man/printafm.1 1.31, man/ps2ascii.1 1.30, man/ps2epsi.1 1.29, man/ps2pdf.1 1.36, man/ps2pdfwr.1 1.35, man/ps2ps.1 1.38, man/wftopfa.1 1.31]

2004-11-20 04:41 Ralph Giles

Correct a typo in the reference to the cmpi script.

[doc/Testing.htm 1.30]

2004-11-20 04:40 Ralph Giles

Update release date and product name.

[doc/News.htm 1.155, src/gscdef.c 1.49, src/version.mak 1.77]

2004-11-20 04:33 Ralph Giles

Define SHARE_JASPER=0 by default in the windows build. This doesn't
enable anything, but makes it easier to get going.

[src/winlib.mak 1.23]

2004-11-19 19:56 Ray Johnston

Due to an oversight, JBIG2Decode was omitted from the windows build.
Now it is included in the default FEATURE_DEVS although in the future
this should probably be moved to the pdf.dev

[src/msvc32.mak 1.66]

2004-11-19 04:39 Ray Johnston

Add some missing initializers for glyph_data_t->memory. Related to the
687459 fix.

[src/gdevpsf1.c 1.18, src/gdevpsf2.c 1.33, src/gdevpsfu.c 1.12, src/gsfcid.c 1.13, src/gstype42.c 1.48, src/gxfcopy.c 1.54, src/gxtype1.c 1.41, src/zchar1.c 1.42, src/zfcid0.c 1.25, src/zfcid1.c 1.23]

2004-11-19 01:44 Raph Levien

Copies over new-style color procs when making a null device with a
target, to avoid inconsistent states. Fixes bug #687770.

DETAILS

The problem was a null device (for implementing stringwidth) with
inconsistent color info; the color_info struct specified 4 components,
but the get_color_mapping_procs was
gx_default_DevGray_get_color_mapping_procs, which is the desired value
for null devices instantiated through gs_copydevice
(i.e. -sDEVICE=null). As a result, cm_comps[1] through [3] were left
uninitialized, and, when negative, would crash the halftone logic.

This patch copies over the new-style color mapping procs (the
old-style were already copied) in the gs_make_null_device routine. A
strong argument could be made for changing the logic in
gx_device_copy_color_procs() instead, but it was felt that this change
was more localized.

Dan reviewed this patch during a phone conversation, so I am going ahead
and committing. I'm also opening a new bug to encourage a closer look
at other uses of gx_device_copy_color_procs() to see whether a change
there is beneficial or harmful.

[src/gsdevice.c 1.24]

2004-11-18 17:09 Ray Johnston

Fix regression created by previous patch for bug 687752.

[lib/pdf_draw.ps 1.88]

2004-11-18 11:04 Russell Lang

Update Windows installer to use the current name for the license file,
Public.htm not the older PUBLIC.

[src/winint.mak 1.23]

2004-11-18 06:48 Russell Lang

Add utility mkcidfm.ps to create a cidfmap file based on fonts
found in a directory.
Change MS-Windows installer to optionally update lib/cidfmap
with the CJK fonts found in the Windows font directory.

DETAILS:
Ghostscript does not ship with CJK fonts.
If support for Chinese, Japanese or Korean is added to MS-Windows,
CJK TrueType fonts and font collections are added to the MS-Windows
fonts directory.  These can be used by ghostscript by specifying
mapping and aliases in the lib/cidfmap file.
This patch looks in the MS-Windows fonts directory for known
CJK fonts, and if present it appends appropriate mappings or
aliases to the lib/cidfmap file.
The font names and aliases are currently fixed, but can
be changed by editing mkcidfm.ps.

A new checkbox is added to the installer dialog
"Use Windows TrueType fonts for Chinese, Japanese and Korean"
Only if the user selects this will lib/cidfmap will be updated.
The default behavior is that lib/cidfmap is unchanged.

[doc/Psfiles.htm 1.55, lib/mkcidfm.ps 1.1, src/dwinst.cpp 1.6, src/dwinst.h 1.7, src/dwsetup.cpp 1.9, src/dwsetup.h 1.6, src/dwsetup.rc 1.12, src/dwuninst.cpp 1.5]

2004-11-18 02:20 Ray Johnston

Fix a missing part of the JOBSERVER implementation that makes the ^D a
self-delimitting token. Fixes bug 687779.

[src/iscan.c 1.19]

2004-11-18 01:44 Ray Johnston

Fix for unlimited recursion in 'cs/CS' implementation (actually in a
certain path in 'resolvecolorspace'. Fixes bug 687752 for Artifex
customer 190.

[lib/pdf_draw.ps 1.87]

2004-11-17 19:48 Ray Johnston

Fix bug 687777 to remove the makefile dependency of dscparse from the
pdfwrite device. This allows non-PS to include the pdfwrite.dev in the
build. Also updated zdscpars.c to add needed 'mem' pointer.

[src/devs.mak 1.119, src/int.mak 1.131, src/zdscpars.c 1.17]

2004-11-16 02:53 Igor Melichev

Fix (pdfwrite) : Page context stream was not properly formed when starts with an invisible text.

DETAILS :

Bug 687797 "pdfwrite generates invalid pdf".
The improved condition made consistent with gdevpdte.c ln 501.

EXPECTED DIFFERENCES :

None.

[src/gdevpdtt.c 1.94]

2004-11-15 01:12 Ray Johnston

Fix for Bug 687459 (SEGV) addressing several problems: (i) Elements
fetched from a font dictionary have to be dereferenced into a ref
since pointers change if the dictionary is resized (to add entries);
(ii) The glyph_cache used by gs_font_cid2 fonts needs to be in stable
memory since elements might be added after a 'save' and the list will
still be refereced by the font, so cannot be freed by 'restore';
(iii) The gs_glyph_cache__release was never being called so creating
a memory leak -- font notification (called by gs_font_finalize) is
now used to free the cache list; (iv) The gs_glyph_cache__release
did not work (probably was never tested since it was not being used).

DETAILS:

Using stable_memory means that the objects created need to be freed
properly, that's why the font_notify mechanism was used. This fixes
the problem reported by the bug and doesn't seem to have created
any other problems (regression test passed).

A 'memory' element was added to the gs_glyph_data_s structure so
that the 'bits' can be allocated using the desired memory (stable
memory in the case that we are using the cache). This was deemed
preferable to always using the pfont->memory->stable_memory since
changing to this might cause other problems. This did create a
fair number of changes since every place the get_outline was used,
the glyph_data structure needed to have the 'memory' element set.
We could have used 'NULL' to signal pfont->memory, but this might
have masked uninitialized memory issues that can be tracked with
tools such as valgrind.

The gs_glyph_cache__release was totally broken, and since it was
not previously used, fixing and testing it presents no risk of
other clients relying on broken behaviour.

The implementation of the cache is VERY RUDIMENTARY -- a linked
list of elements with a hard-coded number (32767) limit to the
size of the cache. The size is too small to be useful for Asian
fonts, but making it bigger will result in a lot of time spent
finding a 'miss' condition. At least the current logic has LRU
slot re-use behaviour (which should be retained). Fixing this,
and making the cache limit larger are left for a later change
(post 8.50 release).

EXPECTED DIFFERENCES:

None.

[src/gdevpsft.c 1.33, src/gsgcache.c 1.3, src/gsgcache.h 1.2, src/gsgdata.h 1.5, src/gstype42.c 1.47, src/gxfcopy.c 1.53, src/gxttfb.c 1.36, src/zbfont.c 1.28, src/zfcid0.c 1.24, src/zfcid1.c 1.22]

2004-11-14 01:41 Russell Lang

Add missing header include for setting the display device callback.

[src/imain.c 1.41]

2004-11-13 22:08 Igor Melichev

Fix : toolbin/pdfinflt.ps did not decompress some streams (continued).

DETAILS :

The 2nd Patch from SaGS for the bug 687746
"gs\toolbin\pdfinflt.ps doesn't unpack a stream"

The previous patch contained on over-optimization that leaded to a corrupted
operand stack. "{ [ {proc} {proc} ] }" (note: 2 identical inner procs)
can be optimized:
either as "{ [ {proc} dup    ] }" - use VM for only 1 copy of "{proc}"
or as	  "{ { {proc} {proc} } }" - the 2-element array is allocated
				    only once, by the parser, not at
				    each execution of the enclosing proc
but we cannot apply both these optimizations at the same time.

This error affects PDF files that include a /Filter and/or /DecodeParams
specified as 1-element arrays. PDFs for which these entries are a single
name (for /Filter) or dict (for /DecodeParams) or arrays with 2 or more
elements are not affected.

EXPECTED DIFFERENCES :

None.

[toolbin/pdfinflt.ps 1.7]

2004-11-12 21:28 Russell Lang

Spelling corrections.

[doc/Use.htm 1.122]

2004-11-08 16:56 Ralph Giles

Add the new image comparison tool to the file index in the documentation.

[doc/Testing.htm 1.29]

2004-11-07 21:09 Igor Melichev

Fix : Improve the resource path customization and the related documentation (continued).

DETAILS :

This fixes some minor ambiguities.

[doc/Use.htm 1.121]

2004-11-07 19:57 Igor Melichev

fuzzy.c : Implementing multipage image files.

DETAILS:

Report will contain a line per different page.
Thus the report file may contain multiple lines.

The output image file contains only the the first page difference
due to a restricted capability of available viewers.

Bug 687765 "fuzzy.c : multipage documents unsupported.".

[toolbin/tests/fuzzy.c 1.17]

2004-11-07 19:25 Igor Melichev

Fix : Cygwin/gcc warnings.

DETAILS :

Cygwin/gcc claims an undefined result in spdiff.c
due to possibly undefined order of evaluation of operands of a binary operation.
The hunk #2 now sets 'ti', rather the old code does not.
But we believe that the change is algorithmically equivalent.

EXPECTED DIFFERENCES :

None.

[src/gxdevndi.c 1.5, src/spdiff.c 1.8, src/ttinterp.c 1.16]

2004-11-06 22:20 Ralph Giles

Remove some obsolete assert calls which caused problems on some
platforms due to incorrect string quoting in assert.h.

[src/gxhintn.c 1.55]

2004-11-06 19:30 Ray Johnston

Fix: Python opens files in text mode unless "rb" is needed.

[toolbin/tests/cmpi.py 1.2]

2004-11-06 06:38 Ray Johnston

Add an interactive image compare tool written in Python by a Python
neophyte. Not quite ready for prime-time, but an interesting enough start
to commit. Even though there are bugs in the differencing, responsiveness
and memory usage, it is still sometimes useful. If a version # were to be
applied to this, I would call it 0.1 (at least it is a positive number).

[toolbin/tests/cmpi.py 1.1]

2004-11-05 17:03 Ralph Giles

Update the MacOS X platform-specific makefile. Remove -traditional-cpp.
This was added to work around bugs in earlier releases of Apple's gcc,
but it is not necessary with more recent releases, and conflicts with
newer cpp features used by more recent Ghostscript code. Partial fix
for bug 687787.

[src/macosx.mak 1.25]

2004-11-04 20:31 Russell Lang

Improve documentation for CID fonts.

[doc/Use.htm 1.120]

2004-11-03 17:46 Ralph Giles

Include stdio_.h instead of the system header according to C style.

[src/gslibctx.h 1.5, src/lib.mak 1.203]

2004-11-03 08:23 Ray Johnston

Add handling for missing EOL following the %PDF-#.## string in the header.
Yet another bad file that Acrobat Reader handles. Bug 687781.

DETAILS:

If we get an error doing the 'cvr' to get the version #, trim a character
from the end of the string and try again. Stop if the string becomes empty.

[lib/pdf_main.ps 1.88]

2004-11-03 07:34 Ralph Giles

Add missing opening quotes to the error printouts. This typo came in
as part of an earlier bug fix and prevented compilation. Bug 687784.

[src/gdevsppr.c 1.9]

2004-11-01 21:21 Jack Moffitt

Fixes Bug#687762.  Includes the date specification of the CVS checkout
in the baseline update log.  This then gets propagated to the daily
reports.

[toolbin/tests/update_specific 1.4]

2004-11-01 21:09 Igor Melichev

Fix (pdfwrite) : Forget cancelled resources.

DETAILS :

Bug 687749 "PS to PDF generates very large PDF document"

1. An indeterministic bug fixed in gdevpdfi.c, hunk #1.

2. Implemented a recognition of equal patterns in gdevpdfi.c
and provided a PDF pattern substitution.
We caould not provide a substitution in the PS interpreter
because an accumulated pattern instance doesn't point
to the corresponding client color.

3. pdf_forget_resource is applied when a resource is cancelled and
is not longer needed. This applies to all redundant resources except patterns,
because patterns keep the substitution data.
We would like to save memory from substitured patterns with
a special substitution table,
but we have no time for such optimization now.

4. The function pdf_forget_resource is some slow
because the data structure was not designed for
removing resources from lists.
We would like to implement dual linked lists,
but we have no time for such optimization now.

5. Since pdf_forget_resource is not applied to patters,
we need to prevent a big growth of the number of stored patterns.
We implemented pdf_drop_resources for that purpose
and drop all substitured pattrens after 300 ones
have been accumulated, but not frequenter than once per page.
This solution isn't perfect, but should work for most cases.
If a substituted pattern is dropped erroneusely,
it will be accumulated again, maybe causing some slowdown.

6. Implemented a new device parameter PrintStatistics.
The new function pdf_print_resource_statistics
prints a statistics to stdout.

EXPECTED DIFFERENCES :

None.

[src/gdevpdf.c 1.101, src/gdevpdfg.c 1.59, src/gdevpdfg.h 1.34, src/gdevpdfi.c 1.57, src/gdevpdfj.c 1.32, src/gdevpdfp.c 1.40, src/gdevpdfu.c 1.61, src/gdevpdfv.c 1.37, src/gdevpdfx.h 1.103, src/gdevpdti.c 1.39, src/gdevpdtt.c 1.93]

2004-11-01 18:21 Ralph Giles

Exempt three new files from the multiple-include protect check. Like the
previous exemptions, these are templates that must be instantiated multiple
times to function properly.

[toolbin/tests/check_source.py 1.11]

2004-11-01 09:15 Ralph Giles

We now implement job server behavior. This is no longer an open issue.

[doc/Issues.htm 1.44]

2004-11-01 09:15 Ralph Giles

Mention the issue with polygon overlap in antialiased rendering.
Closes bug 687742.

[doc/Use.htm 1.119]

2004-10-29 01:04 Russell Lang

Documentation update to fix some dead links.

[doc/Readme.htm 1.59]

2004-10-29 00:07 Russell Lang

Documentation fixes, due to changes in iapi.h.

[doc/API.htm 1.46, doc/Lib.htm 1.36]

2004-10-28 17:34 Igor Melichev

Fix (pdfwrite) : Font size was wrong when definefont applied to a scaled font.

DETAILS :

Bug 687615 "ps2pdf squeezes glyph strings".

This continues the patch
http://www.ghostscript.com/pipermail/gs-cvs/2003-August/003487.html (igor486).

EXPECTED DIFFERENCES :

None.

[src/gdevpdtd.c 1.17]

2004-10-28 11:58 Igor Melichev

Fix (vdtrace.c) : Fix gcc warnings and improve C-style.

DETAILS :

This change is algorithmically equivalent.

EXPECTED DIFFERENCES :

None.

[src/vdtrace.c 1.9]

2004-10-28 09:26 Igor Melichev

Fix (gswin32) : Opened a window outside the desctop area.

DETAILS :

When the Tracer window was opened with a clean Registry
(particularly at a first run after the operating system instalaton),
the window placement got big negative coordinates.

EXPECTED DIFFERENCES :

None.

[src/dwimg.c 1.17]

2004-10-28 08:39 Igor Melichev

Fix (type 1 interpreter) : Replaced Metrics was missed.

DETAILS :

Bug 687614 "mirrored glyph is rendered at incorrect position".

This patch fixes the problem for raster devices.
Without -dNOCACHE the behavior was indeterministic due to
uninitialized cxs.use_FontBBox_as_Metrics2 in zchar1.c.

We ported the change from gstype1.c to gstype2.c with no special testing
because we have no practical examples of Type 2 with a replaced lsb.
It happens so because Type 2 only appears in PDF, which doesn't replace lsb.

EXPECTED DIFFERENCES :

None.

[src/gstype1.c 1.32, src/gstype2.c 1.36, src/zchar1.c 1.41]

2004-10-28 07:25 Igor Melichev

Fix (pdfwrite) : Glyph positions were wrong for vertical CID fonts (continued 2).

DETAILS :

Bug 687614 "mirrored glyph is rendered at incorrect position".

The new code implements the improved logics :

    /* With WMode 1 v-vector is (WMode 1 origin) - (WMode 0 origin).
       The glyph shifts in the opposite direction.  */
    /* With WMode 0 v-vector is (Metrics sb) - (native sb).
       The glyph shifts in same direction.  */

Also improved the related comments.

EXPECTED DIFFERENCES :

pdfwrite 093-01.ps .

[src/gdevpdte.c 1.65]

2004-10-27 10:56 Igor Melichev

Fix (resource machinery) : Improve the resource path customization and the related documentation (continued).

DETAILS :

A wrong paragraph removed form the documentation.

EXPECTED DIFFERENCES :

None.

[doc/Use.htm 1.118]

2004-10-26 17:28 Ralph Giles

Bump the version info after the 8.32 release.

[doc/News.htm 1.154, lib/gs_init.ps 1.113, src/gscdef.c 1.48, src/version.mak 1.76]

2004-10-26 17:07 Igor Melichev

Fix (resource machinery) : Improve the resource path customization and the related documentation.

DETAILS :

1. Explained the resource locator's logics in Use.htm .
Bug 687767 "Adding -Ic:\windows\fonts breaks CJK fonts".

2. The old code missed some directories when the user specifies a non-absolute
path as GenericResourcePath.

EXPECTED DIFFERENCES :

None.

[doc/Use.htm 1.117, lib/gs_res.ps 1.38]

2004-10-26 09:44 Igor Melichev

Fix (PDF interpreter) : Improve the font substitution and the CID font substitution.

DETAILS :

1. A new procedure .remove_font_name_prefix removes the subset font name prefix
   when computing a substitute font name.
2. Improved a warning when substituting a CID font resource.
3. Improved the documentation about CID font substitution if the PDF interpreter

Bug 687747 "PDF tries substituting but throws /undefinedresource in --findresource--".

EXPECTED DIFFERENCES :

None.

[doc/Use.htm 1.116, lib/pdf_font.ps 1.71]