tpage: handle EPS without showpage - plan9port - [fork] Plan 9 from user space | |
git clone git://src.adamsgaard.dk/plan9port | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 047fd921744f39a82a86d9370e03f7af511e6e84 | |
parent 3ad4afbe821687bd77f8dffb0e0bf4947faf0a83 | |
Author: Russ Cox <[email protected]> | |
Date: Mon, 25 Feb 2019 09:45:53 -0500 | |
page: handle EPS without showpage | |
Diffstat: | |
M src/cmd/page/gs.c | 4 ++++ | |
M src/cmd/page/ps.c | 3 ++- | |
2 files changed, 6 insertions(+), 1 deletion(-) | |
--- | |
diff --git a/src/cmd/page/gs.c b/src/cmd/page/gs.c | |
t@@ -186,6 +186,10 @@ spawngs(GSInfo *g, char *safer) | |
Binit(&g->gsrd, stdoutp[0], OREAD); | |
+ gscmd(g, "/PAGEDIDSHOWPAGE false def\n"); | |
+ gscmd(g, "/showpage { /PAGEDIDSHOWPAGE true def showpage } bind def\n"… | |
+ gscmd(g, "/PAGEFLUSH { PAGEDIDSHOWPAGE not {showpage} if /PAGEDIDSHOWP… | |
+ | |
gscmd(g, "/PAGEOUT (/dev/fd/4) (w) file def\n"); | |
if(!strcmp(safer, "-dSAFER")) | |
gscmd(g, ".setsafe\n"); | |
diff --git a/src/cmd/page/ps.c b/src/cmd/page/ps.c | |
t@@ -353,7 +353,7 @@ Keepreading: | |
} | |
if(dumb) { | |
- fprint(ps->gs.gsfd, "(%s) run\n", argv[0]); | |
+ fprint(ps->gs.gsfd, "(%s) run PAGEFLUSH\n", argv[0]); | |
fprint(ps->gs.gsfd, "(/dev/fd/3) (w) file dup (THIS IS NOT A P… | |
} | |
t@@ -420,6 +420,7 @@ psdrawpage(Document *d, int page) | |
* so send one to avoid deadlock. | |
*/ | |
write(ps->gs.gsfd, "\n", 1); | |
+ fprint(ps->gs.gsfd, "\nPAGEFLUSH\n"); | |
im = convert(&ps->gs.g); | |
if(im == nil) { | |
fprint(2, "fatal: readimage error %r\n"); |