in reply to Cant find out how to get the real file handle name!

All hash keys are strings; so if you put an object (or any other reference) as the key in a hash, it will be a string in that hash. Example:
use strict; my $x = "foo"; my $y = \$x; my %foo = ($y => "bar"); for (keys %foo) { print $$_ }; # hoping to print 'foo'
That code dies saying "can't use string 'SCALAR(0x...)' as scalar reference..." or something like that. A solution is to keep two hashes.
my %foo = ($y => "bar"); my %refs = ($y => $y);
Now you can access $refs{$_} to get at the REAL reference.

_____________________________________________________
Jeff[japhy]Pinyan: Perl, regex, and perl hacker, who'd like a (from-home) job
s++=END;++y(;-P)}y js++=;shajsj<++y(p-q)}?print:??;