L~R ... thanks for taking the time with me..
It turns out that my test code (above) does indeed reproduce the problem, but only on the server in question, not my local machine (yes, the overall script is CGI).
The last error messages seem to be relevant too. When i run this script:
#!/usr/bin/perl -Tw
use Tie::File;
use strict;
my @array;
my $file = "./file.txt";
my $line = "this is a really long line of text (sortof)";
tie @array, 'Tie::File', $file;
unshift @array, $line;
untie @array
from the command line, i get:
bash-2.05a$ ./tie
Use of uninitialized value in read at /usr/lib/perl5/5.6.1/Tie/File.pm line 699, <FH> line 7.
Use of uninitialized value in read at /usr/lib/perl5/5.6.1/Tie/File.pm line 699, <FH> line 7.
Line 7 of my script is the "my @array;" declaration
The target file is modified, but not as expected, and repeated executions of the test script don't change the file any further. I'm beginning to suspect my installation of Tie::File or Perl itself, since on my local machine this exact same script works as one would think it should.
perl -v reports v5.6.1 |