]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(termdebug): fix a few issues
authorUbaldo Tiberi <ubaldo.tiberi@google.com>
Sun, 14 Jul 2024 14:58:32 +0000 (16:58 +0200)
committerChristian Brabandt <cb@256bit.org>
Sun, 14 Jul 2024 14:58:32 +0000 (16:58 +0200)
Fix a few minor issues:
1. filename with whitespaces issue should be fixed now, fixes: #12357
2. ":Termdebug args" should work now, fixes: #15254

closes: #15261

Signed-off-by: Christian Brabandt <cb@256bit.org>
Signed-off-by: Ubaldo Tiberi <ubaldo.tiberi@google.com>
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim

index dc8b4adc3422bc71e34aa6a0241184ff3a876701..58d526d6a64371543fe5e399d961091380725e03 100644 (file)
@@ -522,7 +522,7 @@ def CreateGdbConsole(dict: dict<any>, pty: string, commpty: string): string
 
   # ---- gdb started. Next, let's set the MI interface. ---
   # Set arguments to be run.
-  if len(proc_args)
+  if !empty(proc_args)
     term_sendkeys(gdbbufnr, $"server set args {join(proc_args)}\r")
   endif
 
@@ -1321,12 +1321,8 @@ def DeleteCommands()
   endif
 
   sign_unplace('TermDebug')
-  breakpoints = {}
-  breakpoint_locations = {}
-
   sign_undefine('debugPC')
   sign_undefine(BreakpointSigns->map("'debugBreakpoint' .. v:val"))
-  BreakpointSigns = []
 enddef
 
 
@@ -1339,7 +1335,7 @@ def Until(at: string)
     ch_log('assume that program is running after this command')
 
     # Use the fname:lnum format
-    var AT = empty(at) ? $"{fnameescape(expand('%:p'))}:{line('.')}" : at
+    var AT = empty(at) ? $"\"{expand('%:p')}:{line('.')}\"" : at
     SendCommand($'-exec-until {AT}')
   else
     ch_log('dropping command, program is running: exec-until')
@@ -1358,7 +1354,7 @@ def SetBreakpoint(at: string, tbreak=false)
   endif
 
   # Use the fname:lnum format, older gdb can't handle --source.
-  var AT = empty(at) ? $"{fnameescape(expand('%:p'))}:{line('.')}" : at
+  var AT = empty(at) ? $"\"{expand('%:p')}:{line('.')}\"" : at
   var cmd = ''
   if tbreak
     cmd = $'-break-insert -t {AT}'