diff options
author | Chris Liddell <chris.liddell@artifex.com> | 2013-06-25 08:55:08 +0100 |
---|---|---|
committer | Chris Liddell <chris.liddell@artifex.com> | 2013-06-25 09:06:51 +0100 |
commit | 200dc18647ae24995e28607f838d77affbfc7638 (patch) | |
tree | 181285377b01dd89eab72188c81784800c285ab2 | |
parent | 10f6e526ec702fd8b74405d3e7461b428bdbdf31 (diff) | |
download | ghostpdl-200dc18647ae24995e28607f838d77affbfc7638.tar.gz |
Set colors up correctly when rendering Type 3 glyph
In the 'd1' operator, if the glyph metrics are clearly wrong, we fall back to
rendering the glyph uncached. The original code failed to do the required
color setup in this path through the code.
The simplest solution, rather than repeat the same code, is to call the 'd0'
operator, after appropriate stack manipulations.
Noticed in passing working on an issue from customer 532.
No cluster differences.
-rw-r--r-- | gs/Resource/Init/pdf_font.ps | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gs/Resource/Init/pdf_font.ps b/gs/Resource/Init/pdf_font.ps index 85a1c09ba..e9aaaf962 100644 --- a/gs/Resource/Init/pdf_font.ps +++ b/gs/Resource/Init/pdf_font.ps @@ -2182,7 +2182,8 @@ drawopdict begin 3 index 6 index eq and % ... llx lly urx ury | ury!=0 (urx!=0 && llx==urx) exch 2 index 5 index eq and or { % ... llx lly urx ury | (urx!=0 && llx==urx) || (ury!=0 && lly==ury) % The bounding box is empty and likely incorrect. Don't cache. - pop pop pop pop .adjustcharwidth setcharwidth + pop pop pop pop + //d0 exec } { 6 -2 roll .adjustcharwidth 6 2 roll setcachedevice } ifelse |