Don't use /dev/tty if it happens to exist on Windows
authorSteve Hay <steve.m.hay@googlemail.com>
Sat, 18 Aug 2012 11:28:32 +0000 (12:28 +0100)
committerSteve Hay <steve.m.hay@googlemail.com>
Sat, 18 Aug 2012 11:28:32 +0000 (12:28 +0100)
This fixes CPAN RT#79001 and CPAN RT#79064.

dist/Term-ReadLine/lib/Term/ReadLine.pm
pod/perldelta.pod

index 3770df0..9d176d7 100644 (file)
@@ -233,7 +233,7 @@ sub findConsole {
     my $console;
     my $consoleOUT;
 
-    if (-e "/dev/tty") {
+    if (-e "/dev/tty" and $^O ne 'MSWin32') {
        $console = "/dev/tty";
     } elsif (-e "con" or $^O eq 'MSWin32') {
        $console = 'CONIN$';
@@ -327,7 +327,7 @@ sub Features { \%features }
 
 package Term::ReadLine;                # So late to allow the above code be defined?
 
-our $VERSION = '1.09';
+our $VERSION = '1.10';
 
 my ($which) = exists $ENV{PERL_RL} ? split /\s+/, $ENV{PERL_RL} : undef;
 if ($which) {
index f20edd5..bd0de17 100644 (file)
@@ -248,6 +248,12 @@ resolved, and <getservbyname()> is no longer called when the port is specified.
 
 =item *
 
+L<Term::ReadLine> has been upgraded from version 1.09 to 1.10.  This fixes the
+use of the B<cpan> and B<cpanp> shells on Windows in the event that the current
+drive happens to contain a F<\dev\tty> file.
+
+=item *
+
 L<Time::Local> has been upgraded from version 1.2000 to 1.2300.  Seconds values
 greater than 59 but less than 60 no longer cause C<timegm()> and C<timelocal()>
 to croak.