comparison src/os_win32.c @ 11991:15ec6d5adf43 v8.0.0876

patch 8.0.0876: backslashes and wildcards in backticks don't work commit https://github.com/vim/vim/commit/39d21e3c30f3391f3b27f5ddb7e1ad411bdb8f2e Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 5 23:09:31 2017 +0200 patch 8.0.0876: backslashes and wildcards in backticks don't work Problem: MS-Windows: Backslashes and wildcards in backticks don't work. Solution: Do not handle backslashes inside backticks in the wrong place. (Yasuhiro Matsumoto, closes #1942)
author Christian Brabandt <cb@256bit.org>
date Sat, 05 Aug 2017 23:15:04 +0200
parents 74e45c11b754
children 7e704d75a882
comparison
equal deleted inserted replaced
11990:402d24fae651 11991:15ec6d5adf43
7002 { 7002 {
7003 idx = used_file_indexes[i]; 7003 idx = used_file_indexes[i];
7004 str = utf16_to_enc(ArglistW[idx], NULL); 7004 str = utf16_to_enc(ArglistW[idx], NULL);
7005 if (str != NULL) 7005 if (str != NULL)
7006 { 7006 {
7007 int literal = used_file_literal;
7008
7007 #ifdef FEAT_DIFF 7009 #ifdef FEAT_DIFF
7008 /* When using diff mode may need to concatenate file name to 7010 /* When using diff mode may need to concatenate file name to
7009 * directory name. Just like it's done in main(). */ 7011 * directory name. Just like it's done in main(). */
7010 if (used_file_diff_mode && mch_isdir(str) && GARGCOUNT > 0 7012 if (used_file_diff_mode && mch_isdir(str) && GARGCOUNT > 0
7011 && !mch_isdir(alist_name(&GARGLIST[0]))) 7013 && !mch_isdir(alist_name(&GARGLIST[0])))
7023 /* Re-use the old buffer by renaming it. When not using literal 7025 /* Re-use the old buffer by renaming it. When not using literal
7024 * names it's done by alist_expand() below. */ 7026 * names it's done by alist_expand() below. */
7025 if (used_file_literal) 7027 if (used_file_literal)
7026 buf_set_name(fnum_list[i], str); 7028 buf_set_name(fnum_list[i], str);
7027 7029
7028 alist_add(&global_alist, str, used_file_literal ? 2 : 0); 7030 /* Check backtick literal. backtick literal is already expanded in
7031 * main.c, so this part add str as literal. */
7032 if (literal == FALSE)
7033 {
7034 int len = STRLEN(str);
7035 if (len > 2 && *str == '`' && *(str + len - 1) == '`')
7036 literal = TRUE;
7037 }
7038 alist_add(&global_alist, str, literal ? 2 : 0);
7029 } 7039 }
7030 } 7040 }
7031 7041
7032 if (!used_file_literal) 7042 if (!used_file_literal)
7033 { 7043 {