[gs-cvs] rev 7531 - trunk/gs/src

leonardo at ghostscript.com leonardo at ghostscript.com
Wed Dec 27 10:27:56 PST 2006


Author: leonardo
Date: 2006-12-27 10:27:55 -0800 (Wed, 27 Dec 2006)
New Revision: 7531

Modified:
   trunk/gs/src/gspath.c
Log:
Fix : 'clippath' didn't set the current point.

DETAILS :

The bug has been introduced when we implemented the current point in 'double'.
It caused an inconsistent result when 'show' follows 'clippath',
because 'show' still uses pgs->ppath->position.
Debugged with CET 13-22.ps page 6, the item much13. 

We would like to avoid the usage of pgs->ppath->position,
but currently we nave no time for a complete analyzis.
Delaying it for better times. See bug 689031.

EXPECTED DIFFERENCES :

None.


Modified: trunk/gs/src/gspath.c
===================================================================
--- trunk/gs/src/gspath.c	2006-12-27 11:59:15 UTC (rev 7530)
+++ trunk/gs/src/gspath.c	2006-12-27 18:27:55 UTC (rev 7531)
@@ -422,8 +422,12 @@
 
     gx_path_init_local(&cpath, pgs->path->memory);
     code = gx_cpath_to_path(pgs->clip_path, &cpath);
-    if (code >= 0)
+    if (code >= 0) {
 	code = gx_path_assign_free(pgs->path, &cpath);
+	pgs->current_point.x = fixed2float(pgs->path->position.x);
+	pgs->current_point.y = fixed2float(pgs->path->position.y);
+	pgs->current_point_valid = true;
+    }
     if (code < 0)
 	gx_path_free(&cpath, "gs_clippath");
     return code;



More information about the gs-cvs mailing list