]> git.deb.at Git - deb/packages.git/blobdiff - lib/Packages/Search.pm
A minimal working version of show_package.pl (essentially porting yesterday's
[deb/packages.git] / lib / Packages / Search.pm
index 31fe9d78d4821bf0c71a1a5b9309dd0070c070f8..000dc602d1b71249f58033352c45a92a8f02fbf3 100644 (file)
@@ -56,7 +56,7 @@ our @ISA = qw( Exporter );
 
 our @EXPORT_OK = qw( nextlink prevlink indexline
                      resperpagelink
-                    read_entry read_src_entry find_binaries
+                    read_entry read_entry_all read_src_entry find_binaries
                     do_names_search do_fulltext_search
                     printindexline multipageheader );
 our %EXPORT_TAGS = ( all => [ @EXPORT_OK ] );
@@ -338,8 +338,8 @@ sub multipageheader {
     return ( $start, $end );
 }
 
-sub read_entry {
-    my ($hash, $key, $results, $opts) = @_;
+sub read_entry_all {
+    my ($hash, $key, $results, $non_results, $opts) = @_;
     my $result = $hash->{$key} || '';
     foreach (split /\000/, $result) {
        my @data = split ( /\s/, $_, 8 );
@@ -349,9 +349,16 @@ sub read_entry {
            && $opts->{h_sections}{$data[3]}) {
            debug( "Using entry ".join( ':', @data), 2);
            push @$results, [ $key, @data ];
+       } else {
+           push @$non_results, [ $key, @data ];
        }
     }
 }
+sub read_entry {
+    my ($hash, $key, $results, $opts) = @_;
+    my @non_results;
+    read_entry_all( $hash, $key, $results, \@non_results, $opts );
+}
 sub read_src_entry {
     my ($hash, $key, $results, $opts) = @_;
     my $result = $hash->{$key} || '';