mirror of
http://git.sesse.net/plocate
synced 2025-10-05 23:42:49 +02:00
Revert "In updatedb, check prunepaths _before_ opening the directory."
This reverts commit 6e7991e5e0
.
David Caldwell pointed out that this breaks prunepaths that are not
directly on the root, since we now get /b before /a/a and this breaks
the expectation that the prunepaths list is iterated through in order.
This commit is contained in:
13
updatedb.cpp
13
updatedb.cpp
@@ -522,6 +522,13 @@ string ExistingDB::read_next_dictionary() const
|
||||
// Takes ownership of fd.
|
||||
int scan(const string &path, int fd, dev_t parent_dev, dir_time modified, dir_time db_modified, ExistingDB *existing_db, DatabaseReceiver *corpus, DictionaryBuilder *dict_builder)
|
||||
{
|
||||
if (string_list_contains_dir_path(&conf_prunepaths, &conf_prunepaths_index, path)) {
|
||||
if (conf_debug_pruning) {
|
||||
fprintf(stderr, "Skipping `%s': in prunepaths\n", path.c_str());
|
||||
}
|
||||
close(fd);
|
||||
return 0;
|
||||
}
|
||||
if (conf_prune_bind_mounts && is_bind_mount(path.c_str())) {
|
||||
if (conf_debug_pruning) {
|
||||
fprintf(stderr, "Skipping `%s': bind mount\n", path.c_str());
|
||||
@@ -676,12 +683,6 @@ int scan(const string &path, int fd, dev_t parent_dev, dir_time modified, dir_ti
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (string_list_contains_dir_path(&conf_prunepaths, &conf_prunepaths_index, (path_plus_slash + e.name).c_str())) {
|
||||
if (conf_debug_pruning) {
|
||||
fprintf(stderr, "Skipping `%s/%s': in prunepaths\n", path.c_str(), e.name.c_str());
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
e.fd = opendir_noatime(fd, e.name.c_str());
|
||||
if (e.fd == -1) {
|
||||
|
Reference in New Issue
Block a user