diff options
author | Ivan Kohler <ivan@freeside.biz> | 2017-11-08 08:00:47 -0800 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2017-11-08 08:00:47 -0800 |
commit | 16b95c78f5daaf10a2a0f5b946dd11f57cd77e44 (patch) | |
tree | 9db8d9faf0c8d04f7f8b18e6470347c73494b80e /FS | |
parent | 9d04e31893b6e56089ab32a007b9c2ace48dbbe6 (diff) |
scalability: always reap children, RT#78270
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/Misc.pm | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/FS/FS/Misc.pm b/FS/FS/Misc.pm index ed4b10321..66b3dda59 100644 --- a/FS/FS/Misc.pm +++ b/FS/FS/Misc.pm @@ -757,6 +757,8 @@ sub generate_ps { my $papersize = $conf->config('papersize') || 'letter'; + local($SIG{CHLD}) = sub {}; + system('dvips', '-q', '-t', $papersize, "$file.dvi", '-o', "$file.ps" ) == 0 or die "dvips failed"; @@ -814,6 +816,8 @@ sub generate_pdf { #system('dvipdf', "$file.dvi", "$file.pdf" ); my $papersize = $conf->config('papersize') || 'letter'; + local($SIG{CHLD}) = sub {}; + system( "dvips -q -f $sfile.dvi -t $papersize ". "| gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$sfile.pdf ". @@ -896,6 +900,7 @@ sub do_print { : $conf->config('lpr', $opt{'agentnum'} ); my $outerr = ''; + local($SIG{CHLD}) = sub {}; run3 $lpr, $data, \$outerr, \$outerr; if ( $? ) { $outerr = ": $outerr" if length($outerr); @@ -985,6 +990,8 @@ sub ocr_image { print $fh $logo_data; close $fh; + local($SIG{CHLD}) = sub {}; + run( [qw(ocroscript recognize), $filename], '>'=>"$filename.hocr" ) or die "ocroscript recognize failed\n"; |