mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 19:01:57 -04:00
Automatically exclude the snapshot .snapraid directory and content files
This commit is contained in:
parent
37ff42a1c2
commit
ea470341aa
10 changed files with 111 additions and 22 deletions
|
|
@ -1329,9 +1329,11 @@ static int scan_sub(struct snapraid_scan* scan, int level, int is_diff, char* pa
|
|||
DIR* d;
|
||||
tommy_list list;
|
||||
tommy_node* node;
|
||||
size_t mount_point_len;
|
||||
size_t path_len;
|
||||
size_t sub_len;
|
||||
|
||||
mount_point_len = strlen(disk->mount_point);
|
||||
path_len = strlen(path_next);
|
||||
sub_len = strlen(sub_next);
|
||||
|
||||
|
|
@ -1404,11 +1406,17 @@ static int scan_sub(struct snapraid_scan* scan, int level, int is_diff, char* pa
|
|||
}
|
||||
|
||||
/* exclude content files even before calling lstat() */
|
||||
if (filter_content(&state->contentlist, path_next) != 0) {
|
||||
if (filter_content(&state->contentlist, disk->mount_point, mount_point_len, sub_next, sub_len, name) != 0) {
|
||||
msg_verbose("Excluding content '%s'\n", path_next);
|
||||
continue;
|
||||
}
|
||||
|
||||
/* exclude snapshot container even before calling lstat() */
|
||||
if (filter_snapshot(sub_next, name) != 0) {
|
||||
msg_verbose("Excluding snapshots directory '%s'\n", path_next);
|
||||
continue;
|
||||
}
|
||||
|
||||
name_len = strlen(dd->d_name);
|
||||
entry = malloc_nofail(sizeof(struct dirent_sorted) + name_len + 1);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue