--- deliantra/Deliantra/Deliantra.pm 2006/02/23 14:54:44 1.30 +++ deliantra/Deliantra/Deliantra.pm 2006/02/23 15:01:43 1.31 @@ -57,8 +57,9 @@ sub load_ref($) { my ($path) = @_; - open my $fh, "<:raw", "$path~" - or die "$path~: $!"; + open my $fh, "<", $path + or die "$path: $!"; + binmode $fh; local $/; thaw <$fh> } @@ -66,10 +67,10 @@ sub save_ref($$) { my ($ref, $path) = @_; - open my $fh, ">:raw", "$path~" + open my $fh, ">", "$path~" or die "$path~: $!"; - my $ref = freeze $ref; - print $fh $ref; + binmode $fh; + print $fh freeze $ref; close $fh; rename "$path~", $path or die "$path: $!"; @@ -148,8 +149,9 @@ } or do { my %pak; - open my $fh, "<:raw", $path + open my $fh, "<", $path or Carp::croak "$_[0]: $!"; + binmode $fh; while (<$fh>) { my ($type, $id, $len, $path) = split; $path =~ s/.*\///; @@ -174,9 +176,11 @@ my %arc; my ($more, $prev); - open my $fh, "<:raw", $path + open my $fh, "<", $path or Carp::croak "$path: $!"; + binmode $fh; + my $parse_block; $parse_block = sub { my %arc = @_;