+my $_version_cache = {};
+sub get_status() {
+ my ($bugnr, $bug, $dist) = @_;
+
+ my @versions = Debbugs::Status::getversions($bug->{'package'}, $dist, undef);
+ my @sourceversions = Debbugs::Status::makesourceversions($bug->{'package'}, undef, @versions);
+
+ if (length($bug->{'done'}) and
+ (not @sourceversions or not @{$bug->{'fixed_versions'}})) {
+ return 'done';
+ }
+ if (@sourceversions) {
+ my $max_buggy = Debbugs::Status::max_buggy(bug => $bugnr,
+ sourceversions => \@sourceversions,
+ found => $bug->{'found_versions'},
+ fixed => $bug->{'fixed_versions'},
+ version_cache => $_version_cache,
+ package => $bug->{'package'});
+ if ($max_buggy eq 'absent' || $max_buggy eq 'fixed') {
+ return $max_buggy;
+ }
+ }