diff --git a/src/os_win32.c b/src/os_win32.c index ac25d7451e..f4d43442d8 100644 --- a/src/os_win32.c +++ b/src/os_win32.c @@ -3378,10 +3378,11 @@ mch_writable(char_u *name) /* * Return 1 if "name" can be executed, 0 if not. + * If "use_path" is FALSE only check if "name" is executable. * Return -1 if unknown. */ int -mch_can_exe(char_u *name, char_u **path) +mch_can_exe(char_u *name, char_u **path, int use_path) { char_u buf[_MAX_PATH]; int len = (int)STRLEN(name); @@ -3389,6 +3390,11 @@ mch_can_exe(char_u *name, char_u **path) if (len >= _MAX_PATH) /* safety check */ return FALSE; + if (!use_path) + { + /* TODO: check if file is really executable. */ + return mch_getperm(name) != -1 && !mch_isdir(name); + } /* If there already is an extension try using the name directly. Also do * this with a Unix-shell like 'shell'. */ diff --git a/src/version.c b/src/version.c index 63577aca0a..f86a9552f5 100644 --- a/src/version.c +++ b/src/version.c @@ -741,6 +741,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 674, /**/ 673, /**/