change VERSION code
[spider.git] / perl / DXDupe.pm
index bcc0f7b0ea843a0aeaf080781a4a1355b7c8db2b..d514affde180cc996461eed5c6b7fd79610afdf5 100644 (file)
@@ -20,14 +20,19 @@ $lasttime = 0;
 $fn = "$main::data/dupefile";
 
 use vars qw($VERSION $BRANCH);
-$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ ) || 0;
-$main::build += $VERSION;
-$main::branch += $BRANCH;
+
+main::mkver($VERSION = q$Revision$);
 
 sub init
 {
-       $dbm = tie (%d, 'DB_File', $fn) or confess "can't open dupe file: $fn ($!)";
+       $dbm = tie (%d, 'DB_File', $fn);
+       unless ($dbm) {
+               eval { untie %d };
+               dbg("Dupefile $fn corrupted, removing...");
+               unlink $fn;
+               $dbm = tie (%d, 'DB_File', $fn) or confess "can't open dupe file: $fn ($!)";
+               confess "cannot open $fn $!" unless $dbm; 
+       }
 }
 
 sub finish
@@ -47,7 +52,7 @@ sub check
 
 sub find
 {
-       return 1 if exists $d{$_[0]};
+       return $d{$_[0]};
 }
 
 sub add