--- loncom/interface/printout.pl 2004/02/12 22:50:35 1.40.2.1 +++ loncom/interface/printout.pl 2004/02/03 00:02:15 1.42 @@ -1,7 +1,7 @@ #!/usr/bin/perl # CGI-script to run LaTeX, dvips, ps2ps, ps2pdf etc. # -# $Id: printout.pl,v 1.40.2.1 2004/02/12 22:50:35 albertel Exp $ +# $Id: printout.pl,v 1.42 2004/02/03 00:02:15 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -32,7 +32,6 @@ use File::Path; use IO::File; use Image::Magick; -my %origENV=%ENV; if (! &LONCAPA::loncgi::check_cookie_and_load_env()) { print <new($figfile) || die "Couldn't open file for reading: $!\n"; my @content_of_file = <$temporary_file>; close $temporary_file; my $noteps; foreach $not_eps (@content_of_file) { if ($not_eps ne '') { + $not_eps=~s|\/\.\/|\/|g; my $eps_f = $not_eps; $eps_f =~ s/\.[^.]*$/\.eps/i; - $_ = $eps_f; - m/\/home\/httpd\/html\/res\/(.+)/; - $eps_f = '/home/httpd/prtspool/'.$1; + if ($eps_f=~/\/home\/([^\/]+)\/public_html\//) { + $eps_f=~s/\/home\/([^\/]+)\/public_html/$1/; + $eps_f = '/home/httpd/prtspool/'.$eps_f; + } else { + $eps_f=~m/\/home\/httpd\/html\/res\/(.+)/; + $eps_f = '/home/httpd/prtspool/'.$1; + } my $path=$eps_f; - $path=~s/\/([^\/]+)\.eps$//; + $path=~s/\/([^\/]+)\.eps$//; File::Path::mkpath($path,0,0777); my $image = Image::Magick->new; $not_eps =~ s/^\s+//; $not_eps =~ s/\s+$//; + if ( exists($done_conversion{$not_eps})) { + next; + } + $done_conversion{$not_eps}=1; $status = $image->Read($not_eps); if ($status) {print " $status ";} $image->Set(page => '+100+200'); @@ -273,8 +282,6 @@ END } else { print "LaTeX file $texfile was not created successfully"; } - #got what we needed reset ENV in case it is to big for system - %ENV=%origENV;