From bfe007a1872aa5700cd330eeebe5587b47b0450d Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Thu, 4 Dec 2025 11:28:44 +0800 Subject: vim-patch:9.1.1948: Windows: Vim adds current directory to search path Problem: Windows: Vim always adds the current directory to search path. This should only happen when using cmd.exe as 'shell'. For example, powershell won't run binaries from the current directory. Solution: Only add current directory to system path, when using cmd.exe as 'shell'. related: vim/vim#10341 related: 083ec6d9a3b7 https://github.com/vim/vim/commit/4d87c9742a544a58c05cb34d4fbaac47e410b369 Co-authored-by: Christian Brabandt --- src/nvim/eval.lua | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src/nvim/eval.lua') diff --git a/src/nvim/eval.lua b/src/nvim/eval.lua index 5b36e6c4b7..b943629299 100644 --- a/src/nvim/eval.lua +++ b/src/nvim/eval.lua @@ -2161,10 +2161,12 @@ M.funcs = { On MS-Windows an executable in the same directory as the Vim executable is always found (it's added to $PATH at |startup|). *NoDefaultCurrentDirectoryInExePath* - On MS-Windows an executable in Vim's current working directory - is also normally found, but this can be disabled by setting - the `$NoDefaultCurrentDirectoryInExePath` environment variable. - This is always done for |:!| commands, for security reasons. + On MS-Windows when using cmd.exe as 'shell' an executable in + Vim's current working directory is also normally found, which + can be disabled by setting the + `$NoDefaultCurrentDirectoryInExePath` environment variable. + This is always done when executing external commands using + e.g. |:!|, |:make|, |system()| for security reasons. The result is a Number: 1 exists -- cgit