I don't know how much help the following idea really will be, since I'm totally befuzzled by the problem. But, have you tried using a lexical variable to hold the filehandle?
open my $datafile, "<", $datafile_name;
I'm not absolutely certain about this, but fairly sure that the file will be closed when this variable goes out of scope. Assuming you're reading the file inside a function, you wouldn't have to do anything to enforce that. Then you can see if that still leads to the same error.
If nothing is wrong with the script, it might just be the C library your Perl was built with.. do you have access to any other computers of different flavour (Unix, Win32; well, VMS would work too *g*, as would some others) that have Perl installed? Try checking there for how the bot behaves, that might give you a hint of what's actually wrong.
Makeshifts last the longest. | [reply] [d/l] |
Thanks Aristotle. I am reading the file in a function, so I will try using a lexical variable to hold the filehandle (did not know you could do that). At work I do not have access to any x86 systems, but I will try it with Linux PPC, and Solaris. I have decided to build a really small test program with fewer dependencies on modules other than Net::AIM, so I can test it at home since I have a K6III running Debian. That way I can see whether it is specific to something in my script, or something going on with the version of Perl & themodules I am using. Though if it is something with my script, I am lost.
| [reply] |