Download | Plain Text | Line Numbers


diff -Naur qmail-scanner-2.02.orig/qmail-scanner-queue.template qmail-scanner-2.02/qmail-scanner-queue.template
--- qmail-scanner-2.02.orig/qmail-scanner-queue.template	2007-08-29 23:39:20.000000000 +0200
+++ qmail-scanner-2.02/qmail-scanner-queue.template	2007-11-14 20:27:25.000000000 +0100
@@ -1974,6 +1974,14 @@
   my ($line,%array,$count,$match,$type,$descr,$entry,$descrip,$size);
   if ($opt_g) {
     print "perlscanner: generate new DB file from $db_filename.txt\n";
+    # delete "__db.[DBNAME]" and "__db.[DBNAME].*"
+    foreach my $tfile ("__db.$db_filename.db.tmp", <__db.$db_filename.db.tmp.*>) {
+      next unless (-e $tfile);
+      if (!unlink($tfile)) {
+	print "ERROR: cannot remove Berkeley DB tmp file $tfile: $!\n";
+	&error_condition("ERROR: cannot remove Berkeley DB tmp file $tfile: $!");
+      }
+    }
     unlink("$db_filename.db.tmp");
     tie (%array, 'DB_File', "$db_filename.db.tmp", O_CREAT|O_RDWR, 0640, $DB_HASH ) || &error_condition("cannot open for write $db_filename.db.tmp - $!");