[BACK]Return to CurrentTorrents.pl CVS log [TXT][DIR] Up to [local] / openbsd / OpenBSDTorrents

Diff for /openbsd/OpenBSDTorrents/CurrentTorrents.pl between version 1.16 and 1.22

version 1.16, 2005/05/05 02:09:43 version 1.22, 2006/07/24 19:03:53
Line 1 
Line 1 
 #!/usr/bin/perl -T  #!/usr/bin/perl -T
 #$Id$  #$RedRiver: CurrentTorrents.pl,v 1.21 2006/05/15 18:47:04 andrew Exp $
 use strict;  use strict;
 use warnings;  use warnings;
 use diagnostics;  use diagnostics;
Line 9 
Line 9 
   
 use lib 'lib';  use lib 'lib';
 use OpenBSDTorrents;  use OpenBSDTorrents;
 use BT::OBTMetaInfo;  use BT::MetaInfo::Cached;
   
 %ENV = ();  %ENV = ();
   
Line 73 
Line 73 
   
 foreach my $name (keys %{ $files{torrent} }) {  foreach my $name (keys %{ $files{torrent} }) {
         next unless $name =~ /^$Name_Filter/;          next unless $name =~ /^$Name_Filter/;
         print "Checking $name\n";          #print "Checking $name\n";
   
         foreach my $epoch ( sort { $b <=> $a } keys %{ $files{torrent}{$name} } ) {          foreach my $epoch ( sort { $b <=> $a } keys %{ $files{torrent}{$name} } ) {
                 #print "\t$epoch\n";                  #print "\t$epoch\n";
Line 88 
Line 88 
                         next;                          next;
                 }                  }
   
                 my $meta_file = $torrent;  
                 $meta_file =~ s/\.torrent$/.$OBT->{META_EXT}/;  
   
                 my $hash = undef;  
                 if (-e $meta_file) {  
                         #print "Reading meta file: $meta_file\n";  
                         open my $meta, $meta_file  
                                 or die "Couldn't open $meta_file: $!";  
                         flock($meta, LOCK_SH);  
                         binmode $meta;  
   
                         $hash = do { local $/; <$meta> };  
   
                         flock($meta, LOCK_UN);  
                         close $meta;  
                 } else {  
   
                 my $t;                  my $t;
                 eval { $t = BT::OBTMetaInfo->new( $torrent ); };                  eval {
                           $t = BT::MetaInfo::Cached->new(
                                   $torrent,
                                   {
                                           cache_root => '/tmp/OBTFileCache'
                                           #$OBT->{DIR_HOME} . '/FileCache'
                                   }
                           );
                   };
   
                 if ($@) {                  if ($@) {
                         warn "Error reading torrent $torrent\n";                          warn "Error reading torrent $torrent\n";
Line 123 
Line 114 
                         next;                          next;
                 }                  }
   
                 $hash = $t->info_hash_cached($torrent);                  my $hash = $t->info_hash;
                 $hash = unpack("H*", $hash);                  $hash = unpack("H*", $hash);
   
                 undef $t;                  undef $t;
   
                 }  
   
                 $files{torrent}{$name}{$epoch}{info_hash} = $hash;                  $files{torrent}{$name}{$epoch}{info_hash} = $hash;
   

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.22

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>