[Secure-testing-commits] r9877 - bin
stef-guest at alioth.debian.org
stef-guest at alioth.debian.org
Tue Sep 23 23:11:56 UTC 2008
Author: stef-guest
Date: 2008-09-23 23:11:54 +0000 (Tue, 23 Sep 2008)
New Revision: 9877
Modified:
bin/check-new-issues
Log:
if automatic search gives only a few results, display all of them instead of just the count (-a 0 gives the old behaviour)
Modified: bin/check-new-issues
===================================================================
--- bin/check-new-issues 2008-09-23 22:14:19 UTC (rev 9876)
+++ bin/check-new-issues 2008-09-23 23:11:54 UTC (rev 9877)
@@ -7,7 +7,7 @@
use Term::ReadLine;
my %opts;
-getopts('ln:fhi:t:Tc', \%opts);
+getopts('ln:fhi:t:Tca:', \%opts);
if ($opts{h}) {
print <<'EOF';
@@ -36,6 +36,8 @@
-t regexp : use regexp to select todos (default: '^\s+TODO: check$' )
-T : same as -t '^\s+TODO: check' (note the missing $)
-c : only do syntax check of embedded-code-copies
+-a <n> : If automatic apt-cache/apt-file search gives more than n results,
+ display only the count (default 10)
EOF
@@ -76,6 +78,8 @@
my $issue_regexp= $opts{i} || 'CVE-200[3-9]';
my $todo_regexp= $opts{t} || ( $opts{T} ? '^\s+TODO: check' : '^\s+TODO: check$' );
+my $auto_display_limit = 10;
+$auto_display_limit = $opts{a} if defined $opts{a};
my $editor=$ENV{EDITOR} || $ENV{VISUAL} || "vi";
@@ -285,9 +289,13 @@
if ($prog) {
my $prog_esc = quotemeta($prog);
print "doing apt-cache search...";
- my $ac=`apt-cache search $prog_esc |wc -l`;
- chomp $ac;
- print "\r$ac results from apt-cache search $prog\n";
+ my @ac=`apt-cache search $prog_esc`;
+ if (scalar @ac > $auto_display_limit || scalar @ac == 0) {
+ print "\r", scalar @ac, " results from apt-cache search $prog_esc\n";
+ }
+ else {
+ print "\r=== apt-cache search $prog_esc:\n", @ac, "===\n";
+ }
foreach my $p (split /\s+/, $prog) {
search_embed($p);
@@ -300,10 +308,22 @@
if (! exists $afcache{$file}) {
my $file_esc = quotemeta($file);
print "doing apt-file search...";
- $afcache{$file}=`apt-file -i search $file_esc |wc -l`;
- chomp $afcache{$file};
+ $afcache{$file}=[`apt-file -i search $file_esc`];
+ if (scalar @{$afcache{$file}} > $auto_display_limit) {
+ # replace with empty array to save mem
+ my $num = scalar @{$afcache{$file}};
+ $afcache{$file} = [];
+ $afcache{$file}->[$num-1] = undef;
+ }
}
- print "\r$afcache{$file} results from apt-file -i search $file\n";
+ if (scalar @{$afcache{$file}} > $auto_display_limit ||
+ scalar @{$afcache{$file}} == 0) {
+ print "\r", scalar @{$afcache{$file}},
+ " results from apt-file -i search $file\n";
+ }
+ else {
+ print "\r=== apt-file -i search $file:\n", @{$afcache{$file}}, "===\n";
+ }
}
}
More information about the Secure-testing-commits
mailing list