summaryrefslogtreecommitdiff
path: root/src/os_unix.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-02-04 00:54:59 +0000
committerBram Moolenaar <Bram@vim.org>2006-02-04 00:54:59 +0000
commit49315f65c985a72c2aac55b883f5ef1195c53ddc (patch)
treecef2f559598d39393d8a94a759febb9e218989ed /src/os_unix.c
parent1ef15e30a0479b4c4f7da7142b6f6a441e295f1e (diff)
downloadvim-git-49315f65c985a72c2aac55b883f5ef1195c53ddc.tar.gz
updated for version 7.0192
Diffstat (limited to 'src/os_unix.c')
-rw-r--r--src/os_unix.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/os_unix.c b/src/os_unix.c
index 4a339f90a..c60ddafe5 100644
--- a/src/os_unix.c
+++ b/src/os_unix.c
@@ -5126,10 +5126,11 @@ mch_expand_wildcards(num_pat, pat, num_file, file, flags)
else if (pat[i][j] == '\\' && pat[i][j + 1] != NUL)
{
/* Remove a backslash, take char literally. But keep
- * backslash before special character and inside
- * backticks. */
+ * backslash inside backticks, before a special character
+ * and before a backtick. */
if (intick
- || vim_strchr(SHELL_SPECIAL, pat[i][j + 1]) != NULL)
+ || vim_strchr(SHELL_SPECIAL, pat[i][j + 1]) != NULL
+ || pat[i][j + 1] == '`')
*p++ = '\\';
++j;
}
@@ -5356,7 +5357,8 @@ mch_expand_wildcards(num_pat, pat, num_file, file, flags)
/* Space or NL separates */
if (shell_style == STYLE_ECHO || shell_style == STYLE_BT)
{
- while (!(shell_style == STYLE_ECHO && *p == ' ') && *p != '\n')
+ while (!(shell_style == STYLE_ECHO && *p == ' ')
+ && *p != '\n' && *p != NUL)
++p;
if (p == buffer + len) /* last entry */
*p = NUL;