Exclude blockless objects from filter-error selection

This commit is contained in:
Andrea Mazzoleni 2026-09-25 08:19:02 +02:00
parent 190efbefb2
commit 69967b1262

View file

@ -5847,7 +5847,8 @@ void state_filter(struct snapraid_state* state, tommy_list* filterlist_file, tom
for (j = tommy_list_head(&disk->linklist); j != 0; j = j->next) {
struct snapraid_link* slink = j->data;
if (filter_path(filterlist_disk, 0, disk->name, slink->sub) != 0
if (filter_error
|| filter_path(filterlist_disk, 0, disk->name, slink->sub) != 0
|| filter_path(filterlist_file, 0, disk->name, slink->sub) != 0
|| filter_existence(filter_missing, disk->dir, slink->sub) != 0
) {
@ -5859,7 +5860,8 @@ void state_filter(struct snapraid_state* state, tommy_list* filterlist_file, tom
for (j = tommy_list_head(&disk->dirlist); j != 0; j = j->next) {
struct snapraid_dir* dir = j->data;
if (filter_emptydir(filterlist_disk, 0, disk->name, dir->sub) != 0
if (filter_error
|| filter_emptydir(filterlist_disk, 0, disk->name, dir->sub) != 0
|| filter_emptydir(filterlist_file, 0, disk->name, dir->sub) != 0
|| filter_existence(filter_missing, disk->dir, dir->sub) != 0
) {