Now that binmode(FH) does implicit ":bytes" revisit
Jarkko Hietaniemi [Mon, 10 Jun 2002 23:24:42 +0000 (23:24 +0000)]
the failing tests.  The worrisome one is the Digest::MD5
test-- how will it fare in CRLF lands now?

p4raw-id: //depot/perl@17175

ext/Digest/MD5/t/files.t
ext/Encode/t/CJKT.t
ext/Encode/t/guess.t
ext/PerlIO/t/fallback.t
ext/Storable/t/malice.t

index 34ef9e0..b49149c 100644 (file)
@@ -175,7 +175,6 @@ sub digest_file
     #print "$file $method\n";
 
     open(FILE, $file) or die "Can't open $file: $!";
-    eval { binmode(FILE, ":bytes") }; # Perl 5.8.0+ only
     my $digest = Digest::MD5->new->addfile(*FILE)->$method();
     close(FILE);
 
@@ -187,7 +186,7 @@ sub cat_file
     my($file) = @_;
     local $/;  # slurp
     open(FILE, $file) or die "Can't open $file: $!";
-    eval { binmode(FILE, ":bytes") }; # Perl 5.8.0+ only
+    binmode(FILE);
     my $tmp = <FILE>;
     close(FILE);
     $tmp;
index 411511e..0c9bb7b 100644 (file)
@@ -44,7 +44,7 @@ my %Charset =
 my $dir = dirname(__FILE__);
 my $seq = 1;
 
-for my $charset (sort keys %Charset) {
+for my $charset (sort keys %Charset){
     my ($src, $uni, $dst, $txt);
 
     my $transcoder = find_encoding($Charset{$charset}[0]) or die;
@@ -70,7 +70,7 @@ for my $charset (sort keys %Charset) {
     if (PerlIO::Layer->find('perlio')){
        binmode($dst, ":utf8");
        print $dst $uni;
-    } else { # ugh!
+    }else{ # ugh!
        binmode($dst);
        my $raw = $uni; Encode::_utf8_off($raw);
        print $dst $raw;
@@ -85,7 +85,7 @@ for my $charset (sort keys %Charset) {
     if (PerlIO::Layer->find('perlio')){
        binmode($src, ":utf8");
        $uni = join('', <$src>);
-    } else { # ugh!
+    }else{ # ugh!
        binmode($src);
        $uni = join('', <$src>);
        Encode::_utf8_on($uni);
@@ -99,9 +99,6 @@ for my $charset (sort keys %Charset) {
 
     open $dst,">$dst_enc" or die "$dst_utf : $!";
     binmode($dst);
-    if (PerlIO::Layer->find('perlio')) {
-       binmode($dst, ":bytes"); # in case LC_ALL is UTF8ish
-    }
     print $dst $txt;
     close($dst); 
     is(compare_text($src_enc, $dst_enc), 0 => "$dst_enc eq $src_enc")
index 667537a..bd403d3 100644 (file)
@@ -48,9 +48,7 @@ my $jisx0208 = File::Spec->catfile(dirname(__FILE__), 'jisx0208.utf');
 my $jisx0212 = File::Spec->catfile(dirname(__FILE__), 'jisx0212.utf');
 
 open my $fh, $jisx0208 or die "$jisx0208: $!";
-if (PerlIO::Layer->find('perlio')) {
-    binmode($fh, ":bytes"); # in case LC_ALL is UTF8ish
-}
+binmode($fh);
 $utf8off = join('' => <$fh>);
 close $fh;
 $utf8on = decode('utf8', $utf8off);
@@ -80,9 +78,7 @@ Encode::Guess->set_suspects(keys %CJKT);
 
 for my $name (keys %CJKT){
     open my $fh, $CJKT{$name} or die "$CJKT{$name}: $!";
-    if (PerlIO::Layer->find('perlio')) {
-        binmode($fh, ":bytes"); # in case LC_ALL is UTF8ish
-    }
+    binmode($fh);
     $utf8off = join('' => <$fh>);
     close $fh;
 
index 1cefa0d..049972e 100644 (file)
@@ -48,7 +48,8 @@ close($fh);
 
 {
     no utf8;
-    open($fh,">:bytes",$file) || die "File cannot be re-opened";
+    open($fh,">$file") || die "File cannot be re-opened";
+    binmode($fh);
     print $fh "\xA30.02\n";
     close($fh);
 }
@@ -70,6 +71,3 @@ close($fh);
 END {
     1 while unlink($file);
 }
-
-
-
index 31cbbd1..405fd3d 100644 (file)
@@ -95,7 +95,6 @@ sub store_and_retrieve {
   unlink $file or die "Can't unlink '$file': $!";
   open FH, ">$file" or die "Can't open '$file': $!";
   binmode FH;
-  eval { binmode(FH, ":bytes") }; # Perl 5.8.0+ only
   print FH $data or die "Can't print to '$file': $!";
   close FH or die "Can't close '$file': $!";
 
@@ -259,7 +258,6 @@ sub slurp {
   local (*FH, $/);
   open FH, "<$file" or die "Can't open '$file': $!";
   binmode FH;
-  eval { binmode(FH, ":bytes") }; # Perl 5.8.0+ only
   my $contents = <FH>;
   die "Can't read $file: $!" unless defined $contents;
   return $contents;