diff options
Diffstat (limited to 'dir.c')
-rw-r--r-- | dir.c | 22 |
1 files changed, 2 insertions, 20 deletions
@@ -1397,29 +1397,14 @@ glob_helper( if (exist == NO || isdir == NO) return 0; - if (magical || recursive || ((FNM_SYSCASE || HAVE_HFS) && plain)) { + if (magical || recursive) { struct dirent *dp; DIR *dirp; IF_HAVE_HFS(int hfs_p); dirp = do_opendir(*path ? path : ".", flags, enc); - if (dirp == NULL) { -# if FNM_SYSCASE || HAVE_HFS - if (!(magical || recursive) && (errno == EACCES)) { - /* no read permission, fallback */ - goto literally; - } -# endif - return 0; - } + if (dirp == NULL) return 0; IF_HAVE_HFS(hfs_p = is_hfs(dirp)); -# if HAVE_HFS - if (!(hfs_p || magical || recursive)) { - closedir(dirp); - goto literally; - } - flags |= FNM_CASEFOLD; -# endif while ((dp = READDIR(dirp, enc)) != NULL) { char *buf; enum answer new_isdir = UNKNOWN; @@ -1501,9 +1486,6 @@ glob_helper( else if (plain) { struct glob_pattern **copy_beg, **copy_end, **cur2; -# if FNM_SYSCASE || HAVE_HFS - literally: -# endif copy_beg = copy_end = GLOB_ALLOC_N(struct glob_pattern *, end - beg); if (!copy_beg) return -1; for (cur = beg; cur < end; ++cur) |