--- deliantra/server/lib/cf.pm 2006/08/28 07:07:42 1.50 +++ deliantra/server/lib/cf.pm 2006/08/28 14:05:24 1.51 @@ -387,17 +387,18 @@ sub object_freezer_save { my ($filename, $objs) = @_; - $filename .= ".pst"; - if (@$objs) { - open my $fh, ">:raw", "$filename~"; - chmod $fh, SAVE_MODE; + open my $fh, ">:raw", "$filename.pst~"; syswrite $fh, Storable::nfreeze { version => 1, objs => $objs }; close $fh; - rename "$filename~", $filename; + chmod SAVE_MODE, "$filename.pst~"; + rename "$filename.pst~", "$filename.pst"; } else { - unlink $filename; + unlink "$filename.pst"; } + + chmod SAVE_MODE, "$filename~"; + rename "$filename~", $filename; } sub object_thawer_load { @@ -669,10 +670,10 @@ my $path = $map->tmpname; defined $path or return; - unlink "$path.cfperl"; unlink "$path.pst"; }; +# old style persistent data, TODO: remove #d# *cf::mapsupport::on_swapin = *cf::mapsupport::on_load = sub { my ($map) = @_;