Mercurial > vim
changeset 35732:c52ca620f43a
runtime(termdebug): gdb file/folder check is now performed only in CWD.
Commit: https://github.com/vim/vim/commit/2736cc725d26c4bd13c7faee2d6d0ff9d0568acc
Author: Ubaldo Tiberi <ubaldo.tiberi@google.com>
Date: Wed Jul 17 20:16:02 2024 +0200
runtime(termdebug): gdb file/folder check is now performed only in CWD.
closes: https://github.com/vim/vim/issues/15268
Signed-off-by: Ubaldo Tiberi <ubaldo.tiberi@google.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Wed, 17 Jul 2024 20:30:04 +0200 |
parents | 75c63097b4d1 |
children | 72a4d76ae905 |
files | runtime/pack/dist/opt/termdebug/plugin/termdebug.vim |
diffstat | 1 files changed, 8 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim +++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim @@ -223,6 +223,11 @@ enddef def SanityCheck(): bool var gdb_cmd = GetCommand()[0] + var cwd = $'{getcwd()}/' + if exists('+shellslash') && !&shellslash + # on windows, need to handle backslash + cwd->substitute('\\', '/', 'g') + endif var is_check_ok = true # Need either the +terminal feature or +channel and the prompt buffer. # The terminal feature does not work with gdb on win32. @@ -230,11 +235,11 @@ def SanityCheck(): bool err = 'Cannot debug, +channel feature is not supported' elseif (way is Way.Prompt) && !exists('*prompt_setprompt') err = 'Cannot debug, missing prompt buffer support' - elseif (way is Way.Prompt) && !empty(glob(gdb_cmd)) + elseif (way is Way.Prompt) && !empty(glob($'{cwd}{gdb_cmd}')) err = $"You have a file/folder named '{gdb_cmd}' in the current directory Termdebug may not work properly. Please exit and rename such a file/folder." - elseif !empty(glob(asmbufname)) + elseif !empty(glob($'{cwd}{asmbufname}')) err = $"You have a file/folder named '{asmbufname}' in the current directory Termdebug may not work properly. Please exit and rename such a file/folder." - elseif !empty(glob(varbufname)) + elseif !empty(glob($'{cwd}{varbufname}')) err = $"You have a file/folder named '{varbufname}' in the current directory Termdebug may not work properly. Please exit and rename such a file/folder." elseif !executable(gdb_cmd) err = $"Cannot execute debugger program '{gdb_cmd}'"