static int is_filtered_lib(struct direntry* file, const char* dir, unsigned int filter, short hide_dot) { int is_filtered=0; char tdir[FILE_MAX], tgroup[GROUP_MAX]; if (BLO_is_a_library(dir, tdir, tgroup)) { is_filtered = !is_hidden_file(file->relname, hide_dot); } else { is_filtered = is_filtered_file(file, dir, filter, hide_dot); } return is_filtered; }
static bool is_filtered_lib(struct direntry *file, const char *root, FileListFilter *filter) { bool is_filtered = !is_hidden_file(file->relname, filter); char dir[FILE_MAXDIR], group[BLO_GROUP_MAX]; if (BLO_is_a_library(root, dir, group)) { is_filtered = !is_hidden_file(file->relname, filter); if (is_filtered && filter->filter && !FILENAME_IS_CURRPAR(file->relname)) { if (is_filtered && (filter->filter_search[0] != '\0')) { if (fnmatch(filter->filter_search, file->relname, FNM_CASEFOLD) != 0) { is_filtered = false; } } } } else { is_filtered = is_filtered_file(file, root, filter); } return is_filtered; }