# HG changeset patch # User Bram Moolenaar # Date 1558698305 -7200 # Node ID 8050cde51945ac93d417301ee6abef56e1107f7f # Parent dcdc2fd828beafa1cca23ac0607ff24bad483bc3 patch 8.1.1377: MS-Windows GUI uses wrong shell command for bash commit https://github.com/vim/vim/commit/fcc4d921d6761b833ae89ca3dc450c48c270ca36 Author: Bram Moolenaar Date: Fri May 24 13:32:36 2019 +0200 patch 8.1.1377: MS-Windows GUI uses wrong shell command for bash Problem: MS-Windows GUI uses wrong shell command for bash. (Robert Bogomip) Solution: Check that 'shellcmdflag' is "/c". (Ken Takata, closes https://github.com/vim/vim/issues/4418) diff --git a/src/os_win32.c b/src/os_win32.c --- a/src/os_win32.c +++ b/src/os_win32.c @@ -4856,27 +4856,25 @@ mch_call_shell( (gui.in_use || gui.starting) && # endif !s_dont_use_vimrun && p_stmp) - /* Use vimrun to execute the command. It opens a console - * window, which can be closed without killing Vim. */ + // Use vimrun to execute the command. It opens a console + // window, which can be closed without killing Vim. vim_snprintf((char *)newcmd, cmdlen, "%s%s%s %s %s", vimrun_path, (msg_silent != 0 || (options & SHELL_DOOUT)) ? "-s " : "", p_sh, p_shcf, cmd); - else + else if ( # ifdef VIMDLL - if (gui.in_use || gui.starting) + (gui.in_use || gui.starting) && # endif + STRCMP(p_shcf, "/c") == 0) + // workaround for the case that "vimrun" does not exist vim_snprintf((char *)newcmd, cmdlen, "%s %s %s %s %s", p_sh, p_shcf, p_sh, p_shcf, cmd); -# ifdef VIMDLL else -# endif #endif -#if !defined(FEAT_GUI_MSWIN) || defined(VIMDLL) vim_snprintf((char *)newcmd, cmdlen, "%s %s %s", p_sh, p_shcf, cmd); -#endif x = mch_system((char *)newcmd, options); vim_free(newcmd); } diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -768,6 +768,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1377, +/**/ 1376, /**/ 1375,