Skip to content

Commit 8f396b7

Browse files
authored
Handle nvim_buf_set_name failure when setting terminal name (#723)
Set terminal dap buffer name with protected call. If setting buffer name fails, use a placeholder. Fixes #722
1 parent f0573ea commit 8f396b7

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

lua/dap/session.lua

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -291,7 +291,12 @@ local function run_in_terminal(self, request)
291291
terminal_width = terminal_win and api.nvim_win_get_width(terminal_win) or 80
292292
terminal_height = terminal_win and api.nvim_win_get_height(terminal_win) or 40
293293
end
294-
api.nvim_buf_set_name(terminal_buf, '[dap-terminal] ' .. (self.config.name or body.args[1]))
294+
local terminal_buf_name = '[dap-terminal] ' .. (self.config.name or body.args[1])
295+
local terminal_name_ok = pcall(api.nvim_buf_set_name, terminal_buf, terminal_buf_name)
296+
if not terminal_name_ok then
297+
log.warn(terminal_buf_name .. ' is not a valid buffer name')
298+
api.nvim_buf_set_name(terminal_buf, '[dap-terminal] <?>')
299+
end
295300
pcall(api.nvim_buf_del_keymap, terminal_buf, "t", "<CR>")
296301
local ok, path = pcall(api.nvim_buf_get_option, cur_buf, 'path')
297302
if ok then

0 commit comments

Comments
 (0)