summaryrefslogtreecommitdiff
blob: ab1c3b031bd81ad48179b74f360556f41574e2ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
diff -ruN espgs-8.15rc3.orig/lib/gs_fonts.ps espgs-8.15rc3/lib/gs_fonts.ps
--- espgs-8.15rc3.orig/lib/gs_fonts.ps	2005-02-17 06:21:49.000000000 +0900
+++ espgs-8.15rc3/lib/gs_fonts.ps	2005-07-13 20:14:12.000000000 +0900
@@ -96,10 +96,17 @@
                 % stack: dict file fontname filename|aliasname
       1 index type /stringtype eq
       1 index type /nametype eq and 1 index xcheck and
-      1 index /run eq 2 index /.runlibfile eq or and {
+      1 index /run eq 2 index /.runlibfile eq 3 index /.runlibfileifexists eq or or and {
                 % This is an inclusion entry.
-        pop findlibfile { exch pop } { file } ifelse
-        2 index exch .readFontmap pop
+        0 index /.runlibfileifexists eq {
+          pop findlibfile {
+            exch pop
+            2 index exch .readFontmap pop
+          } { pop } ifelse
+        } {
+          pop findlibfile { exch pop } { file } ifelse
+          2 index exch .readFontmap pop
+        } ifelse
       } {
                 % This is a real entry.
                 % Read and pop tokens until a semicolon.
diff -ruN espgs-8.15rc3.orig/lib/gs_init.ps espgs-8.15rc3/lib/gs_init.ps
--- espgs-8.15rc3.orig/lib/gs_init.ps.in	2005-07-12 11:04:36.000000000 +0900
+++ espgs-8.15rc3/lib/gs_init.ps.in	2005-07-13 20:14:12.000000000 +0900
@@ -655,6 +655,13 @@
 	   { /undefinedfilename signalerror }
 	  ifelse
 	} bind def
+/runlibfileifexists
+	{
+	  findlibfile
+	   { exch pop /run .systemvar exec }
+	   { pop }
+	  ifelse
+	} bind def
 /selectdevice
 	{ finddevice setdevice .setdefaultscreen } bind def
 /signalerror		% <object> <errorname> signalerror -
@@ -816,6 +823,7 @@
 	} bind def
 % Temporarily substitute it for the real runlibfile.
 /.runlibfile /runlibfile load def
+/.runlibfileifexists /runlibfileifexists load def
 /runlibfile /runlibfile0 load def
 
 % Create the error handling machinery.
@@ -1655,6 +1663,7 @@
 
 % Restore the real definition of runlibfile.
 /runlibfile /.runlibfile load def
+/runlibfileifexists /.runlibfileifexists load def
 currentdict /.runlibfile .undef
 
 % Bind all the operators defined as procedures.