--- Gnuplot.pm_orig	2012-10-01 12:28:01 +1000
+++ Gnuplot.pm	2012-10-01 14:11:26 +1000
@@ -5462,7 +5462,7 @@
     if(!$this->{dumping}) {
 	print $in "show version\n";
 	do {
-	    if($errSelector->can_read(8)) {
+	    if($errSelector->can_read(8) || $^O =~ /MSWin32/i) {
 		my $byte;
 		sysread $err, $byte, 1;
 		$s .= $byte;
@@ -5626,7 +5626,7 @@
 	    my $terminal =$this->{options}->{terminal};
 	    my $delay = ($terminal && $termTab->{$terminal}->{delay}) || 8;
 	    
-	    if( $this->{"errSelector-$suffix"}->can_read($notimeout ? undef : $delay) )
+	    if( ($this->{"errSelector-$suffix"}->can_read($notimeout ? undef : $delay)) || $^O =~ /MSWin32/i )
 	    {
 		# read a byte into the tail of $fromerr. I'd like to read "as many bytes
 		# as are available", but I don't know how to this in a very portable way
@@ -5657,7 +5657,8 @@
 
 	_logEvent($this, "Read string '$fromerr' from gnuplot $suffix process") if $this->{options}{tee};
 
-	$fromerr = $1;
+	warn "\n\$fromerr:\n####\n$fromerr\n####\n\n";
+	$fromerr = ''; #$1;
     
 	my $warningre = qr{^(?:Warning:\s*(.*?)\s*$)\n?}m;
 	
