in reply to Need a little help with file handles.

You wrote:
> ### I discovered that after this line of code, > ### it either closes the file or redirects the > ### file descriptor.
Which line? The get_attributes line?

How did you determine this? By checking the value of fileno? If not, you could check it like this:

print "Before: ", fileno(F), "\n"; .... print "After: ", fileno(F), "\n";
If the value changes, then your suspicion is correct. I don't think that the file has been closed, because I just tried that myself, and if the file were closed store_fd would die with the error "Not a valid file descriptor".