updated for version 7.0217
diff --git a/src/misc1.c b/src/misc1.c
index f95d93d..8399535 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -8938,6 +8938,7 @@
* Add a file to a file list. Accepted flags:
* EW_DIR add directories
* EW_FILE add files
+ * EW_EXEC add executable files
* EW_NOTFOUND add even when it doesn't exist
* EW_ADDSLASH add slash after directory name
*/
@@ -8964,6 +8965,10 @@
if ((isdir && !(flags & EW_DIR)) || (!isdir && !(flags & EW_FILE)))
return;
+ /* If the file isn't executable, may not add it. Do accept directories. */
+ if (!isdir && (flags & EW_EXEC) && !mch_can_exe(f))
+ return;
+
/* Make room for another item in the file list. */
if (ga_grow(gap, 1) == FAIL)
return;