local $SIG{__WARN__} = sub {};
next if (!$disttags{$dist});
- my $presence = Debbugs::Status::bug_presence(bug => $f, status => $bug, dist => $dist);
+
+ # only check for the archs we care about
+ my %svhash = ();
+ for my $arch qw(alpha amd64 arm hppa i386 ia64 mips mipsel powerpc s390 sparc) {
+ my @versions = Debbugs::Packages::getversions($bug->{'package'}, $dist, $arch);
+ my @sourceversions = Debbugs::Packages::makesourceversions($bug->{'package'}, $arch, @versions);
+
+ for my $sv (@sourceversions) {
+ $svhash{$sv} = 1;
+ }
+ }
+
+ my @sourceversions = keys %svhash;
+ my $presence = Debbugs::Status::bug_presence(bug => $f, status => $bug, sourceversions => \@sourceversions);
# ignore bugs that are absent/fixed in this distribution, include everything
# else (that is, "found" which says that the bug is present, and undef, which