]> git.donarmstrong.com Git - debbugs.git/blobdiff - bin/debbugs-loadsql
mtime should be <= to skip during --quick, not just <
[debbugs.git] / bin / debbugs-loadsql
index 277ac2b586f1d2ddb952aea181510caf37eaef3c..f37a8ef6fea4d91963c1072cf0e881827f5d8244 100755 (executable)
@@ -132,7 +132,7 @@ Display this manual.
 use vars qw($DEBUG);
 
 use Debbugs::Common (qw(checkpid lockpid get_hashname getparsedaddrs getbugcomponent make_list getsourcemaintainers),
-                    qw(hash_slice));
+                    qw(hash_slice open_compressed_file),);
 use Debbugs::Config qw(:config);
 use Debbugs::Status qw(read_bug split_status_fields);
 use Debbugs::Log;
@@ -298,8 +298,8 @@ sub add_bugs {
                       print STDERR "Unable to stat $bug $!\n";
                       next;
                    }
-                   my $rs = $s->resultset('Bug')->search({bug=>$bug})->single();
-                   next if defined $rs and $stat->mtime < $rs->last_modified()->epoch();
+                   my $rs = $s->resultset('Bug')->search({id=>$bug})->single();
+                   next if defined $rs and $stat->mtime <= $rs->last_modified()->epoch();
                    push @bugs_to_update, $bug;
                   }
                } else {
@@ -569,7 +569,7 @@ sub add_logs {
                   }
                   if ($options{quick}) {
                       my $rs = $s->resultset('Bug')->search({bug=>$bug})->single();
-                      next if defined $rs and $stat->mtime < $rs->last_modified()->epoch();
+                      next if defined $rs and $stat->mtime <= $rs->last_modified()->epoch();
                   }
                   eval {
                       load_bug_log(db => $s,
@@ -692,27 +692,6 @@ sub db_connect {
         die "Unable to connect to database: ";
 }
 
-sub open_compressed_file {
-    my ($file) = @_;
-    my $fh;
-    my $mode = '<:encoding(UTF-8)';
-    my @opts;
-    if ($file =~ /\.gz$/) {
-       $mode = '-|:encoding(UTF-8)';
-       push @opts,'gzip','-dc';
-    }
-    if ($file =~ /\.xz$/) {
-       $mode = '-|:encoding(UTF-8)';
-       push @opts,'xz','-dc';
-    }
-    if ($file =~ /\.bz2$/) {
-       $mode = '-|:encoding(UTF-8)';
-       push @opts,'bzip2','-dc';
-    }
-    open($fh,$mode,@opts,$file);
-    return $fh;
-}
-
 sub read_release_file {
     my ($file) = @_;
     # parse release