Change 19072 by [EMAIL PROTECTED] on 2003/03/26 22:30:09
Subject: [perl #21672] IO::New and undefined filename behaviour
From: "[EMAIL PROTECTED] (via RT)" <[EMAIL PROTECTED]>
Date: 24 Mar 2003 16:29:08 -0000
Message-Id: <[EMAIL PROTECTED]>
plus a regression test
Affected files ...
... //depot/perl/ext/IO/lib/IO/File.pm#16 edit
... //depot/perl/lib/FileHandle.t#3 edit
Differences ...
==== //depot/perl/ext/IO/lib/IO/File.pm#16 (text) ====
Index: perl/ext/IO/lib/IO/File.pm
--- perl/ext/IO/lib/IO/File.pm#15~12954~ Mon Nov 12 06:50:44 2001
+++ perl/ext/IO/lib/IO/File.pm Wed Mar 26 14:30:09 2003
@@ -158,9 +158,11 @@
defined $perms or $perms = 0666;
return sysopen($fh, $file, $mode, $perms);
}
- if (! File::Spec->file_name_is_absolute($file)) {
- $file = File::Spec->catfile(File::Spec->curdir(),$file);
- }
+ if (defined($file) && length($file)
+ && ! File::Spec->file_name_is_absolute($file))
+ {
+ $file = File::Spec->catfile(File::Spec->curdir(),$file);
+ }
$file = IO::Handle::_open_mode_string($mode) . " $file\0";
}
open($fh, $file);
==== //depot/perl/lib/FileHandle.t#3 (xtext) ====
Index: perl/lib/FileHandle.t
--- perl/lib/FileHandle.t#2~10752~ Wed Jun 20 07:00:23 2001
+++ perl/lib/FileHandle.t Wed Mar 26 14:30:09 2003
@@ -22,7 +22,7 @@
$mystdout = new_from_fd FileHandle 1,"w";
$| = 1;
autoflush $mystdout;
-print "1..11\n";
+print "1..12\n";
print $mystdout "ok ".fileno($mystdout)."\n";
@@ -93,3 +93,5 @@
exit(0);
}
}
+
+print FileHandle->new('','r') ? "not ok 12\n" : "ok 12\n";
End of Patch.