summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamien Riegel <damien@riegel.io>2024-06-14 12:15:11 -0400
committerChristian Brabandt <cb@256bit.org>2024-06-14 20:41:36 +0200
commitfce324f55718192ae7de389bb88d423eed7977a2 (patch)
tree422d50e16ee246f2981109ed44b26e6392391874
parentafbe5359e981e5d19ad23c394aefe60395c3648e (diff)
runtime(termdebug): close all buffers in the same way
For ASM and Variables buffer, check were done to make sure they existed before attempting to close them, but not for debugged program or gdb communication. The debugged program window is a user-facing one and user might close it manually, so it's better to check if it exists. Signed-off-by: Damien Riegel <damien@riegel.io> Signed-off-by: Christian Brabandt <cb@256bit.org>
-rw-r--r--runtime/pack/dist/opt/termdebug/plugin/termdebug.vim16
1 files changed, 8 insertions, 8 deletions
diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
index 15d0397198..a1c92ba0b7 100644
--- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
+++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
@@ -328,14 +328,14 @@ enddef
# Use when debugger didn't start or ended.
def CloseBuffers()
- exe $'bwipe! {ptybufnr}'
- exe $'bwipe! {commbufnr}'
- if asmbufnr > 0 && bufexists(asmbufnr)
- exe $'bwipe! {asmbufnr}'
- endif
- if varbufnr > 0 && bufexists(varbufnr)
- exe $'bwipe! {varbufnr}'
- endif
+ var bufnames = ['debugged\ program', 'gdb\ communication', asmbufname, varbufname]
+ for bufname in bufnames
+ var buf_nr = bufnr(bufname)
+ if buf_nr > 0 && bufexists(buf_nr)
+ exe $'bwipe! {bufname}'
+ endif
+ endfor
+
running = 0
gdbwin = 0
enddef