in reply to Storable bug?

Well, maybe somebody answered your question in the chatterbox, but just in case - the problem is you are trying to 'thaw' something that hasn't been 'frozen', try this instead:
use strict; use Storable qw(freeze thaw); my %to_be_frozen = (foo => 'bar'); my (%thawed,$frozen); eval { $frozen = freeze \%to_be_frozen; }; if($@) { die "error while freezing: $@" } print "it froze it\n"; eval { %thawed = %{ thaw $frozen }; }; if($@) { warn "there was a THAWING error\n" }
UPDATE:
Ok, now i understand what you mean - i added this line:
eval { my $foo = thaw 'asdasdasdasd'; }; if($@) { warn "there was a THAWING error\n" }
just before the first eval in my code above and received this output:
$ ./foo.pl there was a THAWING error error while freezing: Bad hash at blib/lib/Storable.pm (autosplit into + blib/lib/auto/Storable/_freeze.al) line 261, at ./foo.pl line 19
If this is indeed a bug in Storable, then I would send word to the author . . .

Jeff

R-R-R--R-R-R--R-R-R--R-R-R--R-R-R--
L-L--L-L--L-L--L-L--L-L--L-L--L-L--