aboutsummaryrefslogtreecommitdiffstats
path: root/lxr-genxref
diff options
context:
space:
mode:
authorArne Georg Gleditsch <argggh@taniquetil.(none)>2009-08-12 22:39:46 +0200
committerArne Georg Gleditsch <argggh@taniquetil.(none)>2009-08-12 22:39:46 +0200
commit69c9d9207a658bd048fbf54016a5fa4b824a1531 (patch)
tree2849459bf9f168338798d5deedf3150b5faec993 /lxr-genxref
parent981ee0ffb6dda1d61862cab3bd1b72fc68e6e796 (diff)
Make sure purposely skipped files are not marked as pending.
Diffstat (limited to 'lxr-genxref')
-rwxr-xr-xlxr-genxref17
1 files changed, 13 insertions, 4 deletions
diff --git a/lxr-genxref b/lxr-genxref
index 782ad9f..599f202 100755
--- a/lxr-genxref
+++ b/lxr-genxref
@@ -280,16 +280,22 @@ sub reference_file($$$) {
sub hash_file($$$) {
my ($file, $fileid, $rels) = @_;
- return 0 if
- defined($context->config->{'search_size_limit'}) and
+ if (defined($context->config->{'search_size_limit'}) and
$context->config->{'search_size_limit'} > 0 and
- $file->size > $context->config->{'search_size_limit'};
+ $file->size > $context->config->{'search_size_limit'})
+ {
+ $index->to_hash($fileid);
+ $index->to_reference($fileid);
+ return 0;
+ }
my $docid;
if ($index->to_hash($fileid)) {
my $handle;
sysopen($handle, $file->phys_path, 0) || die($!);
unless (-T $handle) {
+ # Non-text file. Mark as referenced as well.
+ $index->to_reference($fileid);
$handle->close();
return 0;
}
@@ -323,7 +329,10 @@ sub hash_file($$$) {
}
else {
$docid = $index->get_hashed_document($fileid);
- return 0 unless $docid;
+ unless ($docid) {
+ $index->to_reference($fileid);
+ return 0;
+ }
my $doc = $hash->get_document($docid);
if (reference_file($file, $fileid, $doc)) {
$hash->save_document($docid, $doc);