--- loncom/cgi/plot.gif 2006/09/06 19:26:07 1.12 +++ loncom/cgi/plot.gif 2016/08/19 05:15:21 1.15 @@ -1,6 +1,6 @@ #!/usr/bin/perl # -# $Id: plot.gif,v 1.12 2006/09/06 19:26:07 albertel Exp $ +# $Id: plot.gif,v 1.15 2016/08/19 05:15:21 musolffc Exp $ # # Copyright Michigan State University Board of Trustees # @@ -25,6 +25,7 @@ # http://www.lon-capa.org/ # use strict; +use bytes; $|=1; @@ -47,14 +48,19 @@ if ($output eq '') { } if ($output eq 'gif' || $output eq 'png') { - open PLOT, "gnuplot $filename |"; + open(my $plot, "gnuplot $filename |"); + my $image_content= ''; + while (my $line = <$plot>) { + $image_content .= $line; + } + my $length = bytes::length($image_content); print <<"END"; Content-type: image/$output +Content-length: $length +$image_content END - while ($_=) { - print; - } + } elsif ($output eq 'eps') { print <<"END"; Content-type: text/html @@ -65,7 +71,7 @@ Content-type: text/html END if (! system ("gnuplot $filename")) { - print "

An error occured.

\n". + print "

An error occurred.

\n". "I am not going to tell you about it as I have not bothered ". "to figure out how to get you the error text.\n"; } else {