summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Liddell <chris.liddell@artifex.com>2014-09-17 12:23:05 +0100
committerChris Liddell <chris.liddell@artifex.com>2014-09-17 12:26:35 +0100
commit404e71e01ad665deb7435fe37aad6034380297e3 (patch)
treef71eb6180cac1b0cb5ece6ef9ce0dcf410eeb611
parent96a55a20f5b0d852d2118a1ac318293c6a0f716e (diff)
downloadghostpdl-404e71e01ad665deb7435fe37aad6034380297e3.tar.gz
Bug 695492: fix seg fault regression with '-h'
When called with the '-h' parameter, we don't fully initialise the PS interpreter. In which case, we shouldn't try to use the PS interpreter when we shut down. No cluster differences.
-rw-r--r--gs/psi/imain.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/gs/psi/imain.c b/gs/psi/imain.c
index b1cc5e2b4..7a888ec61 100644
--- a/gs/psi/imain.c
+++ b/gs/psi/imain.c
@@ -880,13 +880,15 @@ gs_main_finit(gs_main_instance * minst, int exit_status, int code)
* We also have to mess with the BeginPage/EndPage procs so that we don't
* trigger a spurious extra page to be emitted.
*/
- gs_main_run_string(minst,
- "/systemdict .systemexec /begin .systemexec \
- <</BeginPage {pop} /EndPage {pop pop //false } \
- /BGPrint false /NumRenderingThreads 0>> setpagedevice \
- serverdict /.jobsavelevel get 0 eq {/quit} {/stop} ifelse end \
- .systemvar exec",
- 0 , &exit_code, &error_object);
+ if (minst->init_done >= 1) {
+ gs_main_run_string(minst,
+ "/systemdict .systemexec /begin .systemexec \
+ <</BeginPage {pop} /EndPage {pop pop //false } \
+ /BGPrint false /NumRenderingThreads 0>> setpagedevice \
+ serverdict /.jobsavelevel get 0 eq {/quit} {/stop} ifelse end \
+ .systemvar exec",
+ 0 , &exit_code, &error_object);
+ }
#endif
/*