--- cacti-0.8.6a/lib/rrd.php 2004-10-03 22:57:14.000000000 -0400 +++ cacti-0.8.7/lib/rrd.php 2004-10-05 22:50:48.000000000 -0400 @@ -96,12 +96,18 @@ case RRDTOOL_OUTPUT_NULL: return; break; case RRDTOOL_OUTPUT_STDOUT: - return; break; - case RRDTOOL_OUTPUT_STDERR: - if (rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_WRITE) != 0) { - $fp = rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_WRITE); + if (isset($fp)) { + $line = ""; + while (!feof($fp)) { + $line .= fgets($fp, 4096); + } + + return $line; } + break; + case RRDTOOL_OUTPUT_STDERR: + if (isset($fp)) { $output = fgets($fp, 1000000); if (substr($output, 1, 3) == "PNG") { @@ -113,13 +119,14 @@ } print $output; + } + break; case RRDTOOL_OUTPUT_GRAPH_DATA: - if (rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_WRITE) != 0) { - $fp = rrd_get_fd($rrd_struc, RRDTOOL_PIPE_CHILD_WRITE); + if (isset($fp)) { + return fpassthru($fp); } - return fpassthru($fp); break; } }