Patch 8.1.1977
Problem:    Terminal debugger plugin may hang.
Solution:   Wait longer when still reading symbols.
Files:      runtime/pack/dist/opt/termdebug/plugin/termdebug.vim


*** ../vim-8.1.1976/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim        
2018-12-22 15:14:45.587283340 +0100
--- runtime/pack/dist/opt/termdebug/plugin/termdebug.vim        2019-09-04 
14:20:53.239133309 +0200
***************
*** 117,126 ****
--- 117,130 ----
    let s:startsigncolumn = &signcolumn
  
    let s:save_columns = 0
+   let s:allleft = 0
    if exists('g:termdebug_wide')
      if &columns < g:termdebug_wide
        let s:save_columns = &columns
        let &columns = g:termdebug_wide
+       " If we make the Vim window wider, use the whole left halve for the 
debug
+       " windows.
+       let s:allleft = 1
      endif
      let s:vertical = 1
    else
***************
*** 165,170 ****
--- 169,178 ----
      " Assuming the source code window will get a signcolumn, use two more
      " columns for that, thus one less for the terminal window.
      exe (&columns / 2 - 1) . "wincmd |"
+     if s:allleft
+       " use the whole left column
+       wincmd H
+     endif
    endif
  
    " Create a hidden terminal window to communicate with gdb
***************
*** 217,226 ****
      endif
  
      let response = ''
!     for lnum in range(1,200)
!       if term_getline(s:gdbbuf, lnum) =~ 'new-ui mi '
          " response can be in the same line or the next line
!         let response = term_getline(s:gdbbuf, lnum) . term_getline(s:gdbbuf, 
lnum + 1)
          if response =~ 'Undefined command'
            echoerr 'Sorry, your gdb is too old, gdb 7.12 is required'
          call s:CloseBuffers()
--- 225,236 ----
      endif
  
      let response = ''
!     for lnum in range(1, 200)
!       let line1 = term_getline(s:gdbbuf, lnum)
!       let line2 = term_getline(s:gdbbuf, lnum + 1)
!       if line1 =~ 'new-ui mi '
          " response can be in the same line or the next line
!         let response = line1 . line2
          if response =~ 'Undefined command'
            echoerr 'Sorry, your gdb is too old, gdb 7.12 is required'
          call s:CloseBuffers()
***************
*** 230,235 ****
--- 240,248 ----
            " Success!
            break
          endif
+       elseif line1 =~ 'Reading symbols from' && line2 !~ 'new-ui mi '
+       " Reading symbols might take a while, try more times
+       let try_count -= 1
        endif
      endfor
      if response =~ 'New UI allocated'
***************
*** 830,841 ****
  " if there is any.
  func TermDebugBalloonExpr()
    if v:beval_winid != s:sourcewin
!     return
    endif
    if !s:stopped
      " Only evaluate when stopped, otherwise setting a breakpoint using the
      " mouse triggers a balloon.
!     return
    endif
    let s:evalFromBalloonExpr = 1
    let s:evalFromBalloonExprResult = ''
--- 843,854 ----
  " if there is any.
  func TermDebugBalloonExpr()
    if v:beval_winid != s:sourcewin
!     return ''
    endif
    if !s:stopped
      " Only evaluate when stopped, otherwise setting a breakpoint using the
      " mouse triggers a balloon.
!     return ''
    endif
    let s:evalFromBalloonExpr = 1
    let s:evalFromBalloonExprResult = ''
*** ../vim-8.1.1976/src/version.c       2019-09-04 14:11:13.260990522 +0200
--- src/version.c       2019-09-04 14:23:36.970538064 +0200
***************
*** 763,764 ****
--- 763,766 ----
  {   /* Add new patch number below this line */
+ /**/
+     1977,
  /**/

-- 
If Microsoft would build a car...
... You'd have to press the "Start" button to turn the engine off.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/201909041224.x84COnNW006941%40masaka.moolenaar.net.

Raspunde prin e-mail lui