--- deliantra/Deliantra/Deliantra.pm 2006/02/23 13:22:10 1.29 +++ deliantra/Deliantra/Deliantra.pm 2006/02/23 14:54:44 1.30 @@ -13,7 +13,6 @@ use base 'Exporter'; use Carp (); -use Storable; use File::Spec; use List::Util qw(min max); @@ -47,13 +46,21 @@ sub MOVE_SWIM (){ 0x8 } sub MOVE_ALL (){ 0xf } +BEGIN { + if ($^O eq "MSWin32") { + eval "use FreezeThaw qw(freeze thaw)"; + } else { + eval "use Storable qw(freeze thaw)"; + } +} + sub load_ref($) { my ($path) = @_; open my $fh, "<:raw", "$path~" or die "$path~: $!"; local $/; - Storable::thaw <$fh> + thaw <$fh> } sub save_ref($$) { @@ -61,7 +68,8 @@ open my $fh, ">:raw", "$path~" or die "$path~: $!"; - print $fh Storable::nfreeze $ref; + my $ref = freeze $ref; + print $fh $ref; close $fh; rename "$path~", $path or die "$path: $!";