[gs-cvs] rev 7005 - trunk/gs/lib

dan at ghostscript.com dan at ghostscript.com
Sat Aug 26 12:13:58 PDT 2006


Author: dan
Date: 2006-08-26 12:13:58 -0700 (Sat, 26 Aug 2006)
New Revision: 7005

Modified:
   trunk/gs/lib/gs_lev2.ps
Log:
Fix for CET test file 18-02F.ps.  The makepattern operator creates a pattern
dictionary that contains an 'Implementation' entry. The PLRM 3rd says the
following about the contents of the Implementation entry:  "The type and
value of this entry are implementation-dependent."  However 18-02F.ps page 2
expects that this entry be an array and that the second element of the array
be a gstate.  We are making GS compatible with what the CET expects.


Modified: trunk/gs/lib/gs_lev2.ps
===================================================================
--- trunk/gs/lib/gs_lev2.ps	2006-08-26 00:43:26 UTC (rev 7004)
+++ trunk/gs/lib/gs_lev2.ps	2006-08-26 19:13:58 UTC (rev 7005)
@@ -835,9 +835,14 @@
 		% Stack: proto matrix global buildproc
   3 index dup length 1 add dict .copydict
   3 index 3 -1 roll exec 3 -1 roll .setglobal
-  % Hide the gs_pattern?_instance_t inside an array to match CPSI and make CET run
-  1 index /Implementation 3 -1 roll
-  2 array dup 3 -1 roll 0 exch put put
+  % Create an 'Implementation' entry for the pattern dict.  The PRLM 3rd says
+  % this about the contents of Implementation:  "The type and value of this
+  % entry are implementation-dependent."  The CET (page 2 of 18-02f) expects
+  % that this entry be an array and that the second element of the array be a
+  % gstate.  We put our pattern instance struct into the first element of the
+  % array.
+  1 index /Implementation 3 -1 roll gstate 2 array astore
+  put				% put Implementation into the pattern dict.
   readonly exch pop exch pop
 } odef
 



More information about the gs-cvs mailing list