summaryrefslogtreecommitdiff
path: root/Resource
diff options
context:
space:
mode:
authorRay Johnston <ray.johnston@artifex.com>2021-03-17 20:18:44 -0700
committerRay Johnston <ray.johnston@artifex.com>2021-03-17 20:18:44 -0700
commit951639fbe0e9b7216e3e027ccdc471a11db1e50f (patch)
tree41f98a80ce34b35253e3c8b9f9426c2c2ec14dff /Resource
parent5459f7aca1ded3b7cf96c339a2419f418aa406c7 (diff)
downloadghostpdl-951639fbe0e9b7216e3e027ccdc471a11db1e50f.tar.gz
Fix bug 703704: Matte in SMask is indirect reference.
Thanks to Peter Cherepanov for this fix. This also catches /null Matte entries.
Diffstat (limited to 'Resource')
-rw-r--r--Resource/Init/pdf_draw.ps8
1 files changed, 8 insertions, 0 deletions
diff --git a/Resource/Init/pdf_draw.ps b/Resource/Init/pdf_draw.ps
index 048dfe6fd..8527312c1 100644
--- a/Resource/Init/pdf_draw.ps
+++ b/Resource/Init/pdf_draw.ps
@@ -2323,6 +2323,14 @@ currentdict /last-ditch-bpc-csp undef
currentdict /SMask knownoget {
% We are doing transparency and SMask is present in the image
% stack: <imagemask> <SMask>
+ % Normalize /Matte attribute for .begintransparencymaskimage
+ dup /Matte .knownget {
+ oforce dup //null eq {
+ pop dup /Matte undef
+ } {
+ 1 index /Matte [ 4 -1 roll { oforce } forall ] put
+ } ifelse
+ } if
.begintransparencymaskimage
PDFfile fileposition exch
gsave //nodict begin