[gs-cvs] rev 8407 - trunk/gs/src
leonardo at ghostscript.com
leonardo at ghostscript.com
Tue Nov 27 10:11:11 PST 2007
Author: leonardo
Date: 2007-11-27 10:11:10 -0800 (Tue, 27 Nov 2007)
New Revision: 8407
Modified:
trunk/gs/src/gsstate.c
Log:
Fix (graphics) : Improving the setoverprint logic.
DETAILS :
Debugged with the test case of the bug 689155.
This eliminates unnecessary calls of dx_device::procs.create_compositor.
In the test case the oprator 'show' calls gs_save and gs_restore
and the latter performs unnecessary call to gs_do_set_overprint
due to overprint is set at page start. It causes a significant CPU time expense
while clist interpretation.
We're not sure why the old code is such,
we change it as we think correct.
Will see the regression test results.
A local test gave no differences.
EXPECTED DIFFERENCES :
None.
Modified: trunk/gs/src/gsstate.c
===================================================================
--- trunk/gs/src/gsstate.c 2007-11-23 09:23:06 UTC (rev 8406)
+++ trunk/gs/src/gsstate.c 2007-11-27 18:11:10 UTC (rev 8407)
@@ -411,7 +411,7 @@
gs_free_object(pgs->memory, saved, "gs_grestore");
/* update the overprint compositor, if necessary */
- if (prior_overprint || pgs->overprint)
+ if (prior_overprint != pgs->overprint)
return gs_do_set_overprint(pgs);
else
return 0;
More information about the gs-cvs
mailing list