Blob


1 %!PS-Adobe
2 % lib/ehandler.ps -- Downloaded Error Break-page handler
3 % Copyright (c) 1984, 1985, 1986 Adobe Systems Incorporated.
4 % All Rights Reserved.
6 0000 % serverloop password
7 /$brkpage where
8 {pop pop(Error Handler in place - not loaded again\n)print flush stop}
9 {dup serverdict begin statusdict begin checkpassword
10 {(Error Handler downloaded.\n)print flush exitserver}
11 {pop(Bad Password on loading error handler!!!\n)print flush stop}ifelse
12 }ifelse
13 /$brkpage 64 dict def $brkpage begin
14 /prnt
15 {dup type/stringtype ne{=string cvs}if dup length 6 mul/tx exch def/ty 10 def
16 currentpoint/toy exch def/tox exch def 1 setgray newpath
17 tox toy 2 sub moveto 0 ty rlineto tx 0 rlineto 0 ty neg rlineto
18 closepath fill tox toy moveto 0 setgray show}bind def
19 /nl{currentpoint exch pop lmargin exch moveto 0 -10 rmoveto}def
20 /=={/cp 0 def typeprint nl}def
21 /typeprint{dup type dup currentdict exch known
22 {exec}{unknowntype}ifelse}readonly def
23 /lmargin 72 def/rmargin 72 def
24 /tprint{dup length cp add rmargin gt{nl/cp 0 def}if
25 dup length cp add/cp exch def prnt}readonly def
26 /cvsprint{=string cvs tprint( )tprint}readonly def
27 /unknowntype{exch pop cvlit(??)tprint cvsprint}readonly def
28 /integertype{cvsprint}readonly def
29 /realtype{cvsprint}readonly def
30 /booleantype{cvsprint}readonly def
31 /operatortype{(//)tprint cvsprint}readonly def
32 /marktype{pop(-mark- )tprint}readonly def
33 /dicttype{pop(-dictionary- )tprint}readonly def
34 /nulltype{pop(-null- )tprint}readonly def
35 /filetype{pop(-filestream- )tprint}readonly def
36 /savetype{pop(-savelevel- )tprint}readonly def
37 /fonttype{pop(-fontid- )tprint}readonly def
38 /nametype{dup xcheck not{(/)tprint}if cvsprint}readonly def
39 /stringtype
40 {dup rcheck{(\()tprint tprint(\))tprint}{pop(-string- )tprint}ifelse
41 }readonly def
42 /arraytype
43 {dup rcheck{dup xcheck
44 {({)tprint{typeprint}forall(})tprint}
45 {([)tprint{typeprint}forall(])tprint}ifelse}{pop(-array- )tprint}ifelse
46 }readonly def
47 /packedarraytype
48 {dup rcheck{dup xcheck
49 {({)tprint{typeprint}forall(})tprint}
50 {([)tprint{typeprint}forall(])tprint}ifelse}{pop(-packedarray- )tprint}ifelse
51 }readonly def
52 /courier/Courier findfont 10 scalefont def
53 /OLDhandleerror errordict /handleerror get def
54 end %$brkpage
55 errordict/handleerror
56 {<< /PageSize [612 792] /ImagingBBox null >> setpagedevice
57 systemdict begin $error begin $brkpage begin newerror
58 {/newerror false store
59 vmstatus pop pop 0 ne{grestoreall}if initgraphics courier setfont
60 lmargin 720 moveto(ERROR: )prnt errorname prnt
61 nl(OFFENDING COMMAND: )prnt/command load prnt
62 $error/ostack
63 known{nl nl(STACK:)prnt nl nl $error/ostack get aload length{==}repeat}if
64 systemdict/showpage get exec
65 /newerror true store/OLDhandleerror load end end end exec}{end end end}
66 ifelse}
67 dup 0 systemdict put dup 4 $brkpage put bind readonly put