浏览代码

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 {
 			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;