Explorar o código

make glob mark symlinks-to-directories with the GLOB_MARK flag

POSIX is unclear on whether it should, but all historical
implementations seem to behave this way, and it seems more useful to
applications.
Rich Felker %!s(int64=13) %!d(string=hai) anos
pai
achega
d0678b58ab
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      src/regex/glob.c

+ 1 - 1
src/regex/glob.c

@@ -117,7 +117,7 @@ static int match_in_dir(const char *d, const char *p, int flags, int (*errfunc)(
 		} else {
 			int mark = 0;
 			if (flags & GLOB_MARK) {
-				if (de->d_type)
+				if (de->d_type && !S_ISLNK(de->d_type<<12))
 					mark = S_ISDIR(de->d_type<<12);
 				else {
 					struct stat st;