=================================================================== RCS file: /cvs/openbsd/OpenBSDTorrents/CurrentTorrents.pl,v retrieving revision 1.15 retrieving revision 1.22 diff -u -r1.15 -r1.22 --- openbsd/OpenBSDTorrents/CurrentTorrents.pl 2005/05/04 01:48:35 1.15 +++ openbsd/OpenBSDTorrents/CurrentTorrents.pl 2006/07/24 19:03:53 1.22 @@ -1,14 +1,15 @@ #!/usr/bin/perl -T -#$Id: CurrentTorrents.pl,v 1.15 2005/05/04 00:48:35 andrew Exp $ +#$RedRiver: CurrentTorrents.pl,v 1.21 2006/05/15 18:47:04 andrew Exp $ use strict; use warnings; use diagnostics; use Time::Local; +use Fcntl ':flock'; use lib 'lib'; use OpenBSDTorrents; -use BT::OBTMetaInfo; +use BT::MetaInfo::Cached; %ENV = (); @@ -72,7 +73,7 @@ foreach my $name (keys %{ $files{torrent} }) { next unless $name =~ /^$Name_Filter/; - print "Checking $name\n"; + #print "Checking $name\n"; foreach my $epoch ( sort { $b <=> $a } keys %{ $files{torrent}{$name} } ) { #print "\t$epoch\n"; @@ -87,9 +88,16 @@ next; } - my $t; - eval { $t = BT::OBTMetaInfo->new( $torrent ); }; + eval { + $t = BT::MetaInfo::Cached->new( + $torrent, + { + cache_root => '/tmp/OBTFileCache' + #$OBT->{DIR_HOME} . '/FileCache' + } + ); + }; if ($@) { warn "Error reading torrent $torrent\n"; @@ -106,12 +114,13 @@ next; } - my $hash = $t->info_hash_cached($torrent); + my $hash = $t->info_hash; $hash = unpack("H*", $hash); + undef $t; + $files{torrent}{$name}{$epoch}{info_hash} = $hash; - undef $t; if (exists $keep{$name}) { if (exists $keep{$name}{$hash}) {