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

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