aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp/diagnostic.lua
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/lua/vim/lsp/diagnostic.lua')
-rw-r--r--runtime/lua/vim/lsp/diagnostic.lua8
1 files changed, 4 insertions, 4 deletions
diff --git a/runtime/lua/vim/lsp/diagnostic.lua b/runtime/lua/vim/lsp/diagnostic.lua
index 05b68472e7..c6fed54908 100644
--- a/runtime/lua/vim/lsp/diagnostic.lua
+++ b/runtime/lua/vim/lsp/diagnostic.lua
@@ -271,12 +271,12 @@ local function set_diagnostic_cache(diagnostics, bufnr, client_id)
end
-- Account for servers that place diagnostics on terminating newline
if buf_line_count > 0 then
- diagnostic.range.start.line = math.min(
+ diagnostic.range.start.line = math.max(math.min(
diagnostic.range.start.line, buf_line_count - 1
- )
- diagnostic.range["end"].line = math.min(
+ ), 0)
+ diagnostic.range["end"].line = math.max(math.min(
diagnostic.range["end"].line, buf_line_count - 1
- )
+ ), 0)
end
end