]> git.donarmstrong.com Git - debbugs.git/blobdiff - scripts/summary.in
[project @ 2003-02-16 15:20:26 by cjwatson]
[debbugs.git] / scripts / summary.in
index 20cba4602c0fe97482be6263ca3b8033ca3e50aa..d3108a36d57df4965f355472b29be0e4a82c55b4 100755 (executable)
@@ -1,8 +1,13 @@
 #!/usr/bin/perl
-# $Id: summary.in,v 1.3 2001/04/24 19:10:26 doogie Exp $
+# $Id: summary.in,v 1.7 2003/01/08 12:47:56 cjwatson Exp $
+
+$config_path = '/etc/debbugs';
+$lib_path = '/usr/lib/debbugs';
+
+require("$config_path/config");
+require("$lib_path/errorlib");
+$ENV{'PATH'} = $lib_path.':'.$ENV{'PATH'};
 
-require('/etc/debbugs/config');
-require('/usr/lib/debbugs/errorlib');
 chdir("$gSpoolDir") || die "chdir spool: $!\n";
 
 #open(DEBUG,">&4");
@@ -29,10 +34,14 @@ close(M);
 
 defined($startdate= time) || &quit("failed to get time: $!");
 
-opendir(DIR,"db") || &quit("opendir db: $!\n");
-@list= grep(m/^\d+\.status$/,readdir(DIR));
-grep(s/\.status$//,@list);
-@list= sort { $a <=> $b } @list;
+opendir(DIR,"db-h") || &quit("opendir db-h: $!\n");
+@dirs = sort { $a <=> $b } grep(s,^,db-h/,, grep(m/^\d+$/,readdir(DIR)));
+closedir(DIR);
+foreach my $dir (@dirs) {
+        opendir(DIR,$dir);
+        push @list, sort { $a <=> $b } grep(s/\.status$//,grep(m/^\d+\.status$/,readdir(DIR)));
+        closedir(DIR);
+}
 
 $head= $mode eq 'bymaint'
     ? ' Package     Ref    Subject'
@@ -40,16 +49,7 @@ $head= $mode eq 'bymaint'
 $amonths=-1;
 
 while (length($f=shift(@list))) {
-    &filelock("lock/$f");
-    if (!open(S,"db/$f.status")) { &unlinklock; next; }
-    chop($s_originator= <S>);
-    chop($s_date= <S>);
-    chop($s_subject= <S>);
-    chop($s_msgid= <S>);
-    chop($s_package= <S>);
-    chop($s_keywords= <S>);
-    chop($s_done= <S>);
-    chop($s_forwarded= <S>);
+    if (!lockreadbug($f)) { next; }
     $_= $s_package; y/A-Z/a-z/; $_= $` if m/[^-+._a-z0-9]/;
     $s_maintainer=
         defined($maintainer{$_}) ? $maintainer{$_} :