ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra/bin/cfarch-normalize
(Generate patch)

Comparing deliantra/Deliantra/bin/cfarch-normalize (file contents):
Revision 1.2 by root, Tue Feb 6 21:52:44 2007 UTC vs.
Revision 1.3 by root, Tue Feb 6 22:08:14 2007 UTC

4 4
5load_archetypes; 5load_archetypes;
6 6
7for my $path (@ARGV) { 7for my $path (@ARGV) {
8 eval { 8 eval {
9 {
9 open my $fh, "<:raw:perlio:utf8", $path 10 open my $fh, "<:raw:perlio:utf8", $path
10 or die "$path: $!\n"; 11 or die "$path: $!\n";
11 12
12 <$fh> =~ /^Object/i 13 sysread $fh, my $buf, 8192;
14 warn $buf;
15 $buf =~ /^Object \S+\n.*^end$/ism
13 or die "$path: not a crossfire arch file\n"; 16 or die "$path: not a crossfire arch file\n";
17 }
14 18
15 my $arch = read_arch ($path); 19 my $arch = read_arch ($path);
20 $arch = [
21 map $arch->{$_},
22 sort keys %$arch
23 ];
16 24
25 die Crossfire::archlist_to_string ($arch);#d#
26
17 open my $fh2, ">:raw:utf8", "$path~" or Carp::croak "$path~: $!"; 27 open my $fh, ">:raw:utf8", "$path~" or Carp::croak "$path~: $!";
18 print $fh2 Crossfire::archlist_to_string ([values %$arch]) 28 print $fh Crossfire::archlist_to_string ($arch)
19 or Carp::croak "$path~: $!"; 29 or Carp::croak "$path~: $!";
20 close $fh2 or Carp::croak "$path~: $!"; 30 close $fh or Carp::croak "$path~: $!";
21 rename "$path~", $path; 31 rename "$path~", $path;
22 32
23 1 33 1
24 } or warn $@; 34 } or warn $@;
25} 35}

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines