- debug( "Considering entry ".join( ':', @data), 2);
- if ($data[1] eq $suite) {
- if ($archives->{$data[0]}
- && ($data[2] ne 'virtual')) {
- debug( "Using entry ".join( ':', @data), 2);
- return \@data;
- } elsif ($archives->{$data[0]}) {
- debug( "Virtual entry ".join( ':', @data), 2);
- @data_virtual = @data;
- } elsif (($data[0] eq 'us')
- && ($data[2] ne 'virtual')) {
- debug( "Fuzzy entry ".join( ':', @data), 2);
- @data_fuzzy = @data;
- } elsif ($data[0] eq 'us') {
- debug( "Virtual fuzzy entry ".join( ':', @data), 2);
- @data_fuzzy_virtual = @data;
- }
- }
+ debug( "use entry: @data", 2 ) if DEBUG && $data[1] eq $suite;
+ return [ $virt{$suite}, @data ] if $data[1] eq $suite;
+ }
+ if (my $fb_suite = $fallback_suites{$suite}) {
+ my $fb_result = read_entry_simple( $hash, $key, $archives, $fb_suite );
+ my $fb_virt = shift(@$fb_result);
+ $virt{$suite} .= $fb_virt if $fb_virt;
+ return [ $virt{$suite}, @$fb_result ] if @$fb_result;