ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC/Protocol.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC/Protocol.pm (file contents):
Revision 1.113 by root, Thu Jul 12 17:56:51 2007 UTC vs.
Revision 1.114 by root, Thu Jul 12 18:28:34 2007 UTC

65 utf8::downgrade $chksum; 65 utf8::downgrade $chksum;
66 66
67 $chksum = unpack "H*", $chksum; 67 $chksum = unpack "H*", $chksum;
68 $self->{music_map}{$face} = $chksum; 68 $self->{music_map}{$face} = $chksum;
69 69
70 ::message ({ markup => "starting to download song #$face, check your output-rate setting if your connection gets laggy." }); 70 # check if already cached
71 $self->ask_face ($face, $pri, undef, sub {
72 my $num = $_[0];
73 my $len = length $_[1];
74 my ($meta, $data) = unpack "(w/a*)*", $_[1];
75
76 CFPlus::DB::write_file $chksum, $data, sub { };
77 CFPlus::DB::put resmap => $chksum => $meta, sub { }; 71 CFPlus::DB::get resmap => $chksum, sub {
72 my ($meta) = @_;
78 73
74 if (defined $meta) {
79 $self->{music_meta}{$chksum} = $self->{json_coder}->decode ($meta); 75 $self->{music_meta}{$chksum} = $self->{json_coder}->decode ($meta);
76 } else {
77 ::message ({ markup => "starting to download song #$face, check your output-rate setting if your connection gets laggy." });
78 $self->ask_face ($face, $pri, undef, sub {
79 my $num = $_[0];
80 my $len = length $_[1];
81 my ($meta, $data) = unpack "(w/a*)*", $_[1];
82
83 CFPlus::DB::write_file $chksum, $data, sub { };
84 CFPlus::DB::put resmap => $chksum => $meta, sub { };
85
86 $self->{music_meta}{$chksum} = $self->{json_coder}->decode ($meta);
80 ::message ({ markup => "downloaded song #$face, size $len octets" }); 87 ::message ({ markup => "downloaded song #$face, size $len octets" });
81 88
82 &::audio_music_set ($self->{songs}); 89 &::audio_music_set ($self->{songs});
90 });
91 }
83 }); 92 }
84 } 93 }
85 94
86 push @songs, $self->{music_map}{$face}; 95 push @songs, $self->{music_map}{$face};
87 --$pri; 96 --$pri;
88 } 97 }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines