The open is in an if statement. If the open evaluates false (the necessary condition for "or die" to make a difference) the rest of the block following the if should not execute. If the open fails, I want to do something else besides die-- especially since this is a Tk application (in Tk applications all callback errors are trapped, and the application will stay running). On a failed open I put a message to that effect in my status label.
Further research has indicated that the file is being read, since I can do:
foreach my $line (<MVMT>)
{
print $line;
}
and get the results. But if I do:
my @foo;
foreach my $line (<MVMT>)
{
push( @foo, $line );
}
my $file = join('', @foo);
then $file will be empty where @foo is completely as expected.
This is a Windows 2000 machine with ActivePerl's latest, if that makes a difference. |