|
Karsten Hopp |
9b25f5 |
To: vim_dev@googlegroups.com
|
|
Karsten Hopp |
9b25f5 |
Subject: Patch 7.4.672
|
|
Karsten Hopp |
9b25f5 |
Fcc: outbox
|
|
Karsten Hopp |
9b25f5 |
From: Bram Moolenaar <Bram@moolenaar.net>
|
|
Karsten Hopp |
9b25f5 |
Mime-Version: 1.0
|
|
Karsten Hopp |
9b25f5 |
Content-Type: text/plain; charset=UTF-8
|
|
Karsten Hopp |
9b25f5 |
Content-Transfer-Encoding: 8bit
|
|
Karsten Hopp |
9b25f5 |
------------
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
Patch 7.4.672
|
|
Karsten Hopp |
9b25f5 |
Problem: When completing a shell command, directories in the current
|
|
Karsten Hopp |
9b25f5 |
directory are not listed.
|
|
Karsten Hopp |
9b25f5 |
Solution: When "." is not in $PATH also look in the current directory for
|
|
Karsten Hopp |
9b25f5 |
directories.
|
|
Karsten Hopp |
9b25f5 |
Files: src/ex_getln.c, src/vim.h, src/misc1.c, src/eval.c,
|
|
Karsten Hopp |
9b25f5 |
src/os_amiga.c, src/os_msdos.c, src/os_unix.c, src/os_vms.c,
|
|
Karsten Hopp |
9b25f5 |
src/proto/os_amiga.pro, src/proto/os_msdos.pro,
|
|
Karsten Hopp |
9b25f5 |
src/proto/os_unix.pro, src/proto/os_win32.pro
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/ex_getln.c 2015-03-05 19:35:20.690114997 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/ex_getln.c 2015-03-21 16:18:22.392988057 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 4885,4890 ****
|
|
Karsten Hopp |
9b25f5 |
--- 4885,4891 ----
|
|
Karsten Hopp |
9b25f5 |
char_u *s, *e;
|
|
Karsten Hopp |
9b25f5 |
int flags = flagsarg;
|
|
Karsten Hopp |
9b25f5 |
int ret;
|
|
Karsten Hopp |
9b25f5 |
+ int did_curdir = FALSE;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
if (buf == NULL)
|
|
Karsten Hopp |
9b25f5 |
return FAIL;
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 4896,4902 ****
|
|
Karsten Hopp |
9b25f5 |
if (pat[i] == '\\' && pat[i + 1] == ' ')
|
|
Karsten Hopp |
9b25f5 |
STRMOVE(pat + i, pat + i + 1);
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! flags |= EW_FILE | EW_EXEC;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* For an absolute name we don't use $PATH. */
|
|
Karsten Hopp |
9b25f5 |
if (mch_isFullName(pat))
|
|
Karsten Hopp |
9b25f5 |
--- 4897,4903 ----
|
|
Karsten Hopp |
9b25f5 |
if (pat[i] == '\\' && pat[i + 1] == ' ')
|
|
Karsten Hopp |
9b25f5 |
STRMOVE(pat + i, pat + i + 1);
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! flags |= EW_FILE | EW_EXEC | EW_SHELLCMD;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* For an absolute name we don't use $PATH. */
|
|
Karsten Hopp |
9b25f5 |
if (mch_isFullName(pat))
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 4913,4923 ****
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Go over all directories in $PATH. Expand matches in that directory and
|
|
Karsten Hopp |
9b25f5 |
! * collect them in "ga".
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
ga_init2(&ga, (int)sizeof(char *), 10);
|
|
Karsten Hopp |
9b25f5 |
! for (s = path; *s != NUL; s = e)
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
if (*s == ' ')
|
|
Karsten Hopp |
9b25f5 |
++s; /* Skip space used for absolute path name. */
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
--- 4914,4935 ----
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Go over all directories in $PATH. Expand matches in that directory and
|
|
Karsten Hopp |
9b25f5 |
! * collect them in "ga". When "." is not in $PATH also expand for the
|
|
Karsten Hopp |
9b25f5 |
! * current directory, to find "subdir/cmd".
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
ga_init2(&ga, (int)sizeof(char *), 10);
|
|
Karsten Hopp |
9b25f5 |
! for (s = path; ; s = e)
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
+ if (*s == NUL)
|
|
Karsten Hopp |
9b25f5 |
+ {
|
|
Karsten Hopp |
9b25f5 |
+ if (did_curdir)
|
|
Karsten Hopp |
9b25f5 |
+ break;
|
|
Karsten Hopp |
9b25f5 |
+ /* Find directories in the current directory, path is empty. */
|
|
Karsten Hopp |
9b25f5 |
+ did_curdir = TRUE;
|
|
Karsten Hopp |
9b25f5 |
+ }
|
|
Karsten Hopp |
9b25f5 |
+ else if (*s == '.')
|
|
Karsten Hopp |
9b25f5 |
+ did_curdir = TRUE;
|
|
Karsten Hopp |
9b25f5 |
+
|
|
Karsten Hopp |
9b25f5 |
if (*s == ' ')
|
|
Karsten Hopp |
9b25f5 |
++s; /* Skip space used for absolute path name. */
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/vim.h 2015-03-05 19:35:20.686115042 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/vim.h 2015-03-21 16:19:12.656419663 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 841,846 ****
|
|
Karsten Hopp |
9b25f5 |
--- 841,848 ----
|
|
Karsten Hopp |
9b25f5 |
/* Note: mostly EW_NOTFOUND and EW_SILENT are mutually exclusive: EW_NOTFOUND
|
|
Karsten Hopp |
9b25f5 |
* is used when executing commands and EW_SILENT for interactive expanding. */
|
|
Karsten Hopp |
9b25f5 |
#define EW_ALLLINKS 0x1000 /* also links not pointing to existing file */
|
|
Karsten Hopp |
9b25f5 |
+ #define EW_SHELLCMD 0x2000 /* called from expand_shellcmd(), don't check
|
|
Karsten Hopp |
9b25f5 |
+ * if executable is in $PATH */
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Flags for find_file_*() functions. */
|
|
Karsten Hopp |
9b25f5 |
#define FINDFILE_FILE 0 /* only files */
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/misc1.c 2015-03-20 19:06:01.982429823 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/misc1.c 2015-03-21 17:03:42.218172476 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 10987,10994 ****
|
|
Karsten Hopp |
9b25f5 |
if ((isdir && !(flags & EW_DIR)) || (!isdir && !(flags & EW_FILE)))
|
|
Karsten Hopp |
9b25f5 |
return;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! /* If the file isn't executable, may not add it. Do accept directories. */
|
|
Karsten Hopp |
9b25f5 |
! if (!isdir && (flags & EW_EXEC) && !mch_can_exe(f, NULL))
|
|
Karsten Hopp |
9b25f5 |
return;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Make room for another item in the file list. */
|
|
Karsten Hopp |
9b25f5 |
--- 10987,10996 ----
|
|
Karsten Hopp |
9b25f5 |
if ((isdir && !(flags & EW_DIR)) || (!isdir && !(flags & EW_FILE)))
|
|
Karsten Hopp |
9b25f5 |
return;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! /* If the file isn't executable, may not add it. Do accept directories.
|
|
Karsten Hopp |
9b25f5 |
! * When invoked from expand_shellcmd() do not use $PATH. */
|
|
Karsten Hopp |
9b25f5 |
! if (!isdir && (flags & EW_EXEC)
|
|
Karsten Hopp |
9b25f5 |
! && !mch_can_exe(f, NULL, !(flags & EW_SHELLCMD)))
|
|
Karsten Hopp |
9b25f5 |
return;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Make room for another item in the file list. */
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/eval.c 2015-03-20 17:36:38.618949214 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/eval.c 2015-03-21 16:53:45.996929428 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 10271,10277 ****
|
|
Karsten Hopp |
9b25f5 |
typval_T *argvars;
|
|
Karsten Hopp |
9b25f5 |
typval_T *rettv;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
! rettv->vval.v_number = mch_can_exe(get_tv_string(&argvars[0]), NULL);
|
|
Karsten Hopp |
9b25f5 |
}
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
--- 10271,10281 ----
|
|
Karsten Hopp |
9b25f5 |
typval_T *argvars;
|
|
Karsten Hopp |
9b25f5 |
typval_T *rettv;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
! char_u *name = get_tv_string(&argvars[0]);
|
|
Karsten Hopp |
9b25f5 |
!
|
|
Karsten Hopp |
9b25f5 |
! /* Check in $PATH and also check directly if there is a directory name. */
|
|
Karsten Hopp |
9b25f5 |
! rettv->vval.v_number = mch_can_exe(name, NULL, TRUE)
|
|
Karsten Hopp |
9b25f5 |
! || (gettail(name) != name && mch_can_exe(name, NULL, FALSE));
|
|
Karsten Hopp |
9b25f5 |
}
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 10284,10290 ****
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char_u *p = NULL;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! (void)mch_can_exe(get_tv_string(&argvars[0]), &p);
|
|
Karsten Hopp |
9b25f5 |
rettv->v_type = VAR_STRING;
|
|
Karsten Hopp |
9b25f5 |
rettv->vval.v_string = p;
|
|
Karsten Hopp |
9b25f5 |
}
|
|
Karsten Hopp |
9b25f5 |
--- 10288,10294 ----
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char_u *p = NULL;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! (void)mch_can_exe(get_tv_string(&argvars[0]), &p, TRUE);
|
|
Karsten Hopp |
9b25f5 |
rettv->v_type = VAR_STRING;
|
|
Karsten Hopp |
9b25f5 |
rettv->vval.v_string = p;
|
|
Karsten Hopp |
9b25f5 |
}
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/os_amiga.c 2014-04-01 21:00:45.436733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/os_amiga.c 2015-03-21 16:54:49.456210821 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 881,892 ****
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
/* TODO */
|
|
Karsten Hopp |
9b25f5 |
return -1;
|
|
Karsten Hopp |
9b25f5 |
--- 881,894 ----
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
+ * If "use_path" is FALSE only check if "name" is executable.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path, use_path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
+ int use_path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
/* TODO */
|
|
Karsten Hopp |
9b25f5 |
return -1;
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/os_msdos.c 2014-04-01 21:00:45.436733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/os_msdos.c 2015-03-21 16:55:03.048056750 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 2942,2956 ****
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char *p;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
p = searchpath(name);
|
|
Karsten Hopp |
9b25f5 |
if (p == NULL || mch_isdir(p))
|
|
Karsten Hopp |
9b25f5 |
return FALSE;
|
|
Karsten Hopp |
9b25f5 |
--- 2942,2965 ----
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
+ * If "use_path" is FALSE only check if "name" is executable.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path, use_path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
+ int use_path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char *p;
|
|
Karsten Hopp |
9b25f5 |
+ int mode;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
+ if (!use_path)
|
|
Karsten Hopp |
9b25f5 |
+ {
|
|
Karsten Hopp |
9b25f5 |
+ /* TODO: proper check if file is executable. */
|
|
Karsten Hopp |
9b25f5 |
+ mode = vim_chmod(name);
|
|
Karsten Hopp |
9b25f5 |
+ return mode != -1 && (mode & FA_DIREC) == 0;
|
|
Karsten Hopp |
9b25f5 |
+ }
|
|
Karsten Hopp |
9b25f5 |
p = searchpath(name);
|
|
Karsten Hopp |
9b25f5 |
if (p == NULL || mch_isdir(p))
|
|
Karsten Hopp |
9b25f5 |
return FALSE;
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/os_unix.c 2015-03-20 16:26:48.974173903 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/os_unix.c 2015-03-21 17:07:43.083443005 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 3104,3125 ****
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be found in $PATH and executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char_u *buf;
|
|
Karsten Hopp |
9b25f5 |
char_u *p, *e;
|
|
Karsten Hopp |
9b25f5 |
int retval;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! /* If it's an absolute or relative path don't need to use $PATH. */
|
|
Karsten Hopp |
9b25f5 |
! if (mch_isFullName(name) || (name[0] == '.' && (name[1] == '/'
|
|
Karsten Hopp |
9b25f5 |
! || (name[1] == '.' && name[2] == '/'))))
|
|
Karsten Hopp |
9b25f5 |
! {
|
|
Karsten Hopp |
9b25f5 |
! if (executable_file(name))
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
if (path != NULL)
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
--- 3104,3130 ----
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/*
|
|
Karsten Hopp |
9b25f5 |
* Return 1 if "name" can be found in $PATH and executed, 0 if not.
|
|
Karsten Hopp |
9b25f5 |
+ * If "use_path" is FALSE only check if "name" is executable.
|
|
Karsten Hopp |
9b25f5 |
* Return -1 if unknown.
|
|
Karsten Hopp |
9b25f5 |
*/
|
|
Karsten Hopp |
9b25f5 |
int
|
|
Karsten Hopp |
9b25f5 |
! mch_can_exe(name, path, use_path)
|
|
Karsten Hopp |
9b25f5 |
char_u *name;
|
|
Karsten Hopp |
9b25f5 |
char_u **path;
|
|
Karsten Hopp |
9b25f5 |
+ int use_path;
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
char_u *buf;
|
|
Karsten Hopp |
9b25f5 |
char_u *p, *e;
|
|
Karsten Hopp |
9b25f5 |
int retval;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
! /* When "use_path" is false and if it's an absolute or relative path don't
|
|
Karsten Hopp |
9b25f5 |
! * need to use $PATH. */
|
|
Karsten Hopp |
9b25f5 |
! if (!use_path || mch_isFullName(name) || (name[0] == '.'
|
|
Karsten Hopp |
9b25f5 |
! && (name[1] == '/' || (name[1] == '.' && name[2] == '/'))))
|
|
Karsten Hopp |
9b25f5 |
! {
|
|
Karsten Hopp |
9b25f5 |
! /* There must be a path separator, files in the current directory
|
|
Karsten Hopp |
9b25f5 |
! * can't be executed. */
|
|
Karsten Hopp |
9b25f5 |
! if (gettail(name) != name && executable_file(name))
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
if (path != NULL)
|
|
Karsten Hopp |
9b25f5 |
{
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 5730,5736 ****
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC) && !mch_can_exe(p, NULL))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
if (--files_free == 0)
|
|
Karsten Hopp |
9b25f5 |
--- 5735,5742 ----
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC)
|
|
Karsten Hopp |
9b25f5 |
! && !mch_can_exe(p, NULL, !(flags & EW_SHELLCMD)))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
if (--files_free == 0)
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 6230,6236 ****
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC) && !mch_can_exe((*file)[i], NULL))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
p = alloc((unsigned)(STRLEN((*file)[i]) + 1 + dir));
|
|
Karsten Hopp |
9b25f5 |
--- 6236,6243 ----
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC)
|
|
Karsten Hopp |
9b25f5 |
! && !mch_can_exe((*file)[i], NULL, !(flags & EW_SHELLCMD)))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
p = alloc((unsigned)(STRLEN((*file)[i]) + 1 + dir));
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/os_vms.c 2014-11-12 16:10:44.258085148 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/os_vms.c 2015-03-21 16:43:28.283924831 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 483,489 ****
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC) && !mch_can_exe(vms_fmatch[i], NULL))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* allocate memory for pointers */
|
|
Karsten Hopp |
9b25f5 |
--- 483,490 ----
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* Skip files that are not executable if we check for that. */
|
|
Karsten Hopp |
9b25f5 |
! if (!dir && (flags & EW_EXEC)
|
|
Karsten Hopp |
9b25f5 |
! && !mch_can_exe(vms_fmatch[i], NULL, !(flags & EW_SHELLCMD)))
|
|
Karsten Hopp |
9b25f5 |
continue;
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/* allocate memory for pointers */
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/proto/os_amiga.pro 2014-04-01 21:00:45.436733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/proto/os_amiga.pro 2015-03-21 16:50:36.223078295 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 26,32 ****
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_mkdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
void mch_early_init __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
void mch_exit __ARGS((int r));
|
|
Karsten Hopp |
9b25f5 |
--- 26,32 ----
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_mkdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path, int use_path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
void mch_early_init __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
void mch_exit __ARGS((int r));
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/proto/os_msdos.pro 2014-04-01 21:00:45.436733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/proto/os_msdos.pro 2015-03-21 16:50:39.659039386 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 38,44 ****
|
|
Karsten Hopp |
9b25f5 |
int mch_setperm __ARGS((char_u *name, long perm));
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_dirname __ARGS((char_u *buf, int len));
|
|
Karsten Hopp |
9b25f5 |
int mch_remove __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
--- 38,44 ----
|
|
Karsten Hopp |
9b25f5 |
int mch_setperm __ARGS((char_u *name, long perm));
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path, int use_path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_dirname __ARGS((char_u *buf, int len));
|
|
Karsten Hopp |
9b25f5 |
int mch_remove __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/proto/os_unix.pro 2014-04-01 21:00:45.440733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/proto/os_unix.pro 2015-03-21 16:50:44.534984171 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 42,48 ****
|
|
Karsten Hopp |
9b25f5 |
void mch_free_acl __ARGS((vim_acl_T aclent));
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
void mch_early_init __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
void mch_free_mem __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
--- 42,48 ----
|
|
Karsten Hopp |
9b25f5 |
void mch_free_acl __ARGS((vim_acl_T aclent));
|
|
Karsten Hopp |
9b25f5 |
void mch_hide __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
int mch_isdir __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path, int use_path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
void mch_early_init __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
void mch_free_mem __ARGS((void));
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/proto/os_win32.pro 2014-04-01 21:00:45.440733663 +0200
|
|
Karsten Hopp |
9b25f5 |
--- src/proto/os_win32.pro 2015-03-21 16:50:48.558938605 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 26,32 ****
|
|
Karsten Hopp |
9b25f5 |
int mch_is_linked __ARGS((char_u *fname));
|
|
Karsten Hopp |
9b25f5 |
int win32_fileinfo __ARGS((char_u *fname, BY_HANDLE_FILE_INFORMATION *info));
|
|
Karsten Hopp |
9b25f5 |
int mch_writable __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
vim_acl_T mch_get_acl __ARGS((char_u *fname));
|
|
Karsten Hopp |
9b25f5 |
void mch_set_acl __ARGS((char_u *fname, vim_acl_T acl));
|
|
Karsten Hopp |
9b25f5 |
--- 26,32 ----
|
|
Karsten Hopp |
9b25f5 |
int mch_is_linked __ARGS((char_u *fname));
|
|
Karsten Hopp |
9b25f5 |
int win32_fileinfo __ARGS((char_u *fname, BY_HANDLE_FILE_INFORMATION *info));
|
|
Karsten Hopp |
9b25f5 |
int mch_writable __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
! int mch_can_exe __ARGS((char_u *name, char_u **path, int use_path));
|
|
Karsten Hopp |
9b25f5 |
int mch_nodetype __ARGS((char_u *name));
|
|
Karsten Hopp |
9b25f5 |
vim_acl_T mch_get_acl __ARGS((char_u *fname));
|
|
Karsten Hopp |
9b25f5 |
void mch_set_acl __ARGS((char_u *fname, vim_acl_T acl));
|
|
Karsten Hopp |
9b25f5 |
*** ../vim-7.4.671/src/version.c 2015-03-21 14:20:11.524982691 +0100
|
|
Karsten Hopp |
9b25f5 |
--- src/version.c 2015-03-21 15:54:19.693311748 +0100
|
|
Karsten Hopp |
9b25f5 |
***************
|
|
Karsten Hopp |
9b25f5 |
*** 743,744 ****
|
|
Karsten Hopp |
9b25f5 |
--- 743,746 ----
|
|
Karsten Hopp |
9b25f5 |
{ /* Add new patch number below this line */
|
|
Karsten Hopp |
9b25f5 |
+ /**/
|
|
Karsten Hopp |
9b25f5 |
+ 672,
|
|
Karsten Hopp |
9b25f5 |
/**/
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
--
|
|
Karsten Hopp |
9b25f5 |
ARTHUR: A scratch? Your arm's off!
|
|
Karsten Hopp |
9b25f5 |
BLACK KNIGHT: No, it isn't.
|
|
Karsten Hopp |
9b25f5 |
ARTHUR: Well, what's that then?
|
|
Karsten Hopp |
9b25f5 |
BLACK KNIGHT: I've had worse.
|
|
Karsten Hopp |
9b25f5 |
The Quest for the Holy Grail (Monty Python)
|
|
Karsten Hopp |
9b25f5 |
|
|
Karsten Hopp |
9b25f5 |
/// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
|
|
Karsten Hopp |
9b25f5 |
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
|
|
Karsten Hopp |
9b25f5 |
\\\ an exciting new programming language -- http://www.Zimbu.org ///
|
|
Karsten Hopp |
9b25f5 |
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
|