فهرست منبع

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 13 سال پیش
والد
کامیت
d0678b58ab
1فایلهای تغییر یافته به همراه1 افزوده شده و 1 حذف شده
  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 {
 		} else {
 			int mark = 0;
 			int mark = 0;
 			if (flags & GLOB_MARK) {
 			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);
 					mark = S_ISDIR(de->d_type<<12);
 				else {
 				else {
 					struct stat st;
 					struct stat st;