[perl #56644] TODO was too severe. Only :unix :stdio were failing
David Mitchell [Sat, 25 Apr 2009 19:32:26 +0000 (20:32 +0100)]
t/io/perlio_leaks.t

index 7bd0346..6bb6369 100644 (file)
@@ -15,11 +15,14 @@ TODO: {
         my $base_fd = do{ open my $in, '<', $0 or die $!; fileno $in };
 
         for(1 .. 3){
-           local $TODO = "[perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio" if $_ > 1;
-                open my $fh, "<$layer", $0 or die $!;
+           local $TODO;
+           if ($_ > 1 && $layer =~ /^:(unix|stdio)$/) {
+               $TODO = "[perl #56644] PerlIO resource leaks on open() and then :pop in :unix and :stdio"
+           }
+           open my $fh, "<$layer", $0 or die $!;
 
-                is fileno($fh), $base_fd, $layer;
-                binmode $fh, ':pop';
+           is fileno($fh), $base_fd, $layer;
+           binmode $fh, ':pop';
         }
     }
 }