Blame SOURCES/ghostscript-cve-2019-10216.patch

2da1e2
From 5b85ddd19a8420a1bd2d5529325be35d78e94234 Mon Sep 17 00:00:00 2001
2da1e2
From: Chris Liddell <chris.liddell@artifex.com>
2da1e2
Date: Fri, 2 Aug 2019 15:18:26 +0100
2da1e2
Subject: Bug 701394: protect use of .forceput with executeonly
2da1e2
2da1e2
2da1e2
diff --git a/Resource/Init/gs_type1.ps b/Resource/Init/gs_type1.ps
2da1e2
index 6c7735bc0c..a039ccee35 100644
2da1e2
--- a/Resource/Init/gs_type1.ps
2da1e2
+++ b/Resource/Init/gs_type1.ps
2da1e2
@@ -118,25 +118,25 @@
2da1e2
                          ( to be the same as glyph: ) print 1 index //== exec } if
2da1e2
                    3 index exch 3 index .forceput
2da1e2
                                                                  % scratch(string) RAGL(dict) AGL(dict) CharStrings(dict) cstring gname
2da1e2
-                 }
2da1e2
+                 }executeonly
2da1e2
                  {pop} ifelse
2da1e2
-               } forall
2da1e2
+               } executeonly forall
2da1e2
                pop pop
2da1e2
-             }
2da1e2
+             } executeonly
2da1e2
              {
2da1e2
                pop pop pop
2da1e2
              } ifelse
2da1e2
-           }
2da1e2
+           } executeonly
2da1e2
            {
2da1e2
                                                                % scratch(string) RAGL(dict) AGL(dict) CharStrings(dict) cstring gname
2da1e2
              pop pop
2da1e2
            } ifelse
2da1e2
-         } forall
2da1e2
+         } executeonly forall
2da1e2
          3 1 roll pop pop
2da1e2
-     } if
2da1e2
+     } executeonly if
2da1e2
      pop
2da1e2
      dup /.AGLprocessed~GS //true .forceput
2da1e2
-   } if
2da1e2
+   } executeonly if
2da1e2
 
2da1e2
    %% We need to excute the C .buildfont1 in a stopped context so that, if there
2da1e2
    %% are errors we can put the stack back sanely and exit. Otherwise callers won't