Explorar o código

Further support for diag line_num < 1

Fixes #1028
Strahinja Val Markovic %!s(int64=10) %!d(string=hai) anos
pai
achega
6cd929c829
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      python/ycm/vimsupport.py

+ 5 - 0
python/ycm/vimsupport.py

@@ -140,6 +140,11 @@ def UnplaceAllSignsInBuffer( buffer_number ):
 
 
 def PlaceSign( sign_id, line_num, buffer_num, is_error = True ):
+  # libclang can give us diagnostics that point "outside" the file; Vim borks
+  # on these.
+  if line_num < 1:
+    line_num = 1
+
   sign_name = 'YcmError' if is_error else 'YcmWarning'
   vim.command( 'sign place {0} line={1} name={2} buffer={3}'.format(
     sign_id, line_num, sign_name, buffer_num ) )